Skip to content

Commit

Permalink
v3; defaults to pkgx^2; pure js rewrite (#256)
Browse files Browse the repository at this point in the history
  • Loading branch information
mxcl committed Jan 15, 2025
1 parent 6b6c1c2 commit eb1c861
Show file tree
Hide file tree
Showing 20 changed files with 877 additions and 440 deletions.
11 changes: 11 additions & 0 deletions .github/workflows/cd.qa.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
on:
workflow_dispatch:
inputs:
version:
required: true

jobs:
qa-installer:
uses: ./.github/workflows/ci.installer.yml
qa-action:
uses: ./.github/workflows/ci.action.yml
25 changes: 25 additions & 0 deletions .github/workflows/cd.vx.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: cd·vx

on:
release:
types:
- published

concurrency:
group: cd/vx/${{ github.event.release.tag_name }}
cancel-in-progress: true

permissions:
contents: write

jobs:
retag:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: fischerscode/tagger@v0
with:
prefix: v
- run: |
git tag -f latest
git push origin latest --force
77 changes: 0 additions & 77 deletions .github/workflows/cd.yml

This file was deleted.

59 changes: 31 additions & 28 deletions .github/workflows/ci.action.yml
Original file line number Diff line number Diff line change
@@ -1,40 +1,32 @@
on:
push:
branches:
- main
workflow_call:
pull_request:
paths:
- action.ts
- action.js
- action.yml
- package.json
- installer.sh
- .github/workflows/ci.action.yml

concurrency:
group: ${{ github.ref || 'ci' }}/action.ts
cancel-in-progress: true

jobs:
dist:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: ./scripts/dist.sh
- uses: actions/upload-artifact@v3
with:
name: dist
path: dist

std:
needs: dist
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3
with:
name: dist
path: dist
- run: npm i
- uses: ./
with:
version: null
- run: pkgx --version

plus-pkgs:
needs: dist
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
Expand All @@ -46,7 +38,7 @@ jobs:
- [self-hosted, linux, ARM64] # works in arm64 environments
prefix:
- null
- /opt
- /tmp/pkgx
container:
- null
include:
Expand All @@ -55,32 +47,43 @@ jobs:
container: ${{ matrix.container }}
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3

- uses: actions/setup-node@v4
with:
name: dist
path: dist
node-version: latest
- run: npm i

- uses: ./
with:
PKGX_DIR: ${{ matrix.prefix }}
+: node@18 deno.land

- run: test -f '${{ matrix.prefix }}/pkgx.sh/v*/bin/pkgx'
- run: test -f '${{ matrix.prefix }}/deno.land/v*/bin/deno'
if: ${{ matrix.prefix }}

- run: pkgx --version
- run: node --eval 'console.log(1)'
- run: if [[ "$(node --version)" != v18.* ]]; then exit 1; fi
- run: deno --version

multiple-apply-is-ok:
runs-on: ubuntu-latest
needs: dist
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3
with:
name: dist
path: dist
- run: npm i
- uses: ./
- run: pkgx --version
- uses: ./
- run: pkgx --version

dist:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm i
- uses: ./
- run: npm run dist
- run: rm /usr/local/bin/pkgx
- run: '! pkgx --version'
- run: git clean -xfd
- uses: ./
- run: pkgx --version
15 changes: 3 additions & 12 deletions .github/workflows/ci.installer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -156,22 +156,11 @@ jobs:
- debian:buster-slim
- debian:bullseye-slim
- debian:bookworm-slim

- archlinux:latest

# - ubuntu:trusty glibc too old
# - ubuntu:xenial glibc too old
# - ubuntu:bionic glibc too old
# - ubuntu:lunar out of support
- ubuntu:focal
- ubuntu:jammy
- ubuntu:24.04
- ubuntu:24.10

- ubuntu:noble
- fedora:latest

# - nixos/nix:latest can’t exec
# - alpine:latest pkgx binary doesn’t actually end up on the system (wtf)
container: ${{ matrix.container }}
steps:
- uses: actions/checkout@v4
Expand All @@ -196,5 +185,7 @@ jobs:
tar xz --strip-components=3
- run: mv pkgx /usr/local/bin
- run: test "$(pkgx --version)" = 'pkgx 1.0.0'
- run: PKGX_UPDATE=no ./installer.sh
- run: test "$(pkgx --version)" = 'pkgx 1.0.0'
- run: ./installer.sh
- run: pkgx semverator gt $(pkgx --version | awk '{print $2}') 1.0.0
Loading

0 comments on commit eb1c861

Please sign in to comment.