Compare commits

...

88 Commits

Author SHA1 Message Date
Husen e58b416119 Merge pull request #43 from heyhusen/release/v2.2.1
CI / Test (with Dockerfile) (push) Has been cancelled
CI / Publish OCI image (push) Has been cancelled
CI / Test (with prebuilt OCI Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
chore: release v2.2.1
2024-02-19 00:12:16 +07:00
Husen 3f13112064 chore: release v2.2.1
Signed-off-by: Husen <hi@husen.id>
2024-02-19 00:10:06 +07:00
dependabot[bot] 8a82ee672c Merge pull request #39 from heyhusen/dependabot/github_actions/tj-actions/branch-names-8 2024-02-18 16:54:56 +00:00
dependabot[bot] 20d8479ebc chore(deps): bump tj-actions/branch-names from 7 to 8
Bumps [tj-actions/branch-names](https://github.com/tj-actions/branch-names) from 7 to 8.
- [Release notes](https://github.com/tj-actions/branch-names/releases)
- [Changelog](https://github.com/tj-actions/branch-names/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/branch-names/compare/v7...v8)

---
updated-dependencies:
- dependency-name: tj-actions/branch-names
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-18 16:52:52 +00:00
Husen 9fd24ca405 Merge pull request #42 from heyhusen/bugfix/cannot-pull-docker-image
fix: can't pull docker image
2024-02-18 23:47:58 +07:00
Husen f7376aba0b fix: can't pull docker image
Signed-off-by: Husen <hi@husen.id>
2024-02-18 23:45:23 +07:00
dependabot[bot] 5e383b10b5 Merge pull request #38 from hapakaien/dependabot/github_actions/docker/metadata-action-5 2023-09-17 13:50:30 +00:00
dependabot[bot] 8f5e879913 chore(deps): bump docker/metadata-action from 4 to 5
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4 to 5.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Upgrade guide](https://github.com/docker/metadata-action/blob/master/UPGRADE.md)
- [Commits](https://github.com/docker/metadata-action/compare/v4...v5)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-12 20:57:44 +00:00
dependabot[bot] 47fa19da38 Merge pull request #37 from hapakaien/dependabot/github_actions/actions/checkout-4 2023-09-10 09:38:16 +00:00
dependabot[bot] fd1dbe5048 chore(deps): bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-04 20:08:50 +00:00
dependabot[bot] c058d80ac5 Merge pull request #36 from hapakaien/dependabot/github_actions/tj-actions/branch-names-7 2023-05-18 06:53:24 +00:00
dependabot[bot] aa9be96cf9 chore(deps): bump tj-actions/branch-names from 6 to 7
Bumps [tj-actions/branch-names](https://github.com/tj-actions/branch-names) from 6 to 7.
- [Release notes](https://github.com/tj-actions/branch-names/releases)
- [Changelog](https://github.com/tj-actions/branch-names/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/branch-names/compare/v6...v7)

---
updated-dependencies:
- dependency-name: tj-actions/branch-names
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-15 21:01:12 +00:00
dependabot[bot] bc32e723f3 Merge pull request #30 from hapakaien/dependabot/github_actions/tj-actions/branch-names-6 2022-12-04 14:49:34 +00:00
dependabot[bot] f699bb5cff chore(deps): bump tj-actions/branch-names from 5 to 6
Bumps [tj-actions/branch-names](https://github.com/tj-actions/branch-names) from 5 to 6.
- [Release notes](https://github.com/tj-actions/branch-names/releases)
- [Changelog](https://github.com/tj-actions/branch-names/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/branch-names/compare/v5...v6)

---
updated-dependencies:
- dependency-name: tj-actions/branch-names
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-29 21:45:28 +00:00
Ahmad Husen 0f306e414a Merge pull request #29 from hapakaien/release/v2.2.0
CI / Test (with Dockerfile) (push) Has been cancelled
CI / Publish OCI image (push) Has been cancelled
CI / Test (with prebuilt OCI Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
chore: release v2.2.0
2022-08-05 13:25:21 +07:00
Ahmad Husen f9ff68181b chore: release v2.2.0 2022-08-05 13:23:23 +07:00
Ahmad Husen 94f928c5df Merge pull request #28 from LizardByte/repository-name-lowercase
Convert repository name to lowercase
2022-08-05 10:51:18 +07:00
Ahmad Husen 099605a64c Merge pull request #27 from LizardByte/fix/keyring
add option to update archlinux-keyring
2022-08-05 10:07:29 +07:00
ReenigneArcher d3aea41d02 allow variable expansion in sed command
Signed-off-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2022-07-29 17:44:57 -04:00
ReenigneArcher 618a0ba862 make repository name lowercase
Signed-off-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2022-07-29 17:44:57 -04:00
ReenigneArcher c9118ad67a add option to update archlinux-keyring 2022-07-29 17:27:57 -04:00
Ahmad Husen 2d9dafa60e Merge pull request #22 from hapakaien/release/v2.1.1
CI / Test (with Dockerfile) (push) Has been cancelled
CI / Publish OCI image (push) Has been cancelled
CI / Test (with prebuilt OCI Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
chore: release v2.1.1
2022-05-15 14:04:52 +07:00
Ahmad Husen ae967066cb chore: release v2.1.1 2022-05-15 14:03:00 +07:00
Ahmad Husen cf8509924b Merge pull request #21 from hapakaien/bugfix/conditional-bash-script
fix: wrong conditional using paru
2022-05-15 13:54:13 +07:00
Ahmad Husen 1a92d6efa7 fix: wrong conditional using paru 2022-05-15 13:51:00 +07:00
dependabot[bot] 8dc2e4d3e8 Merge pull request #20 from hapakaien/dependabot/github_actions/docker/metadata-action-4 2022-05-06 02:38:57 +00:00
dependabot[bot] 37bda140be chore(deps): bump docker/metadata-action from 3 to 4
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 3 to 4.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Upgrade guide](https://github.com/docker/metadata-action/blob/master/UPGRADE.md)
- [Commits](https://github.com/docker/metadata-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-05 20:27:31 +00:00
Ahmad Husen f710e16a35 Merge pull request #19 from hapakaien/release/v2.1.0
CI / Test (with Dockerfile) (push) Has been cancelled
CI / Publish OCI image (push) Has been cancelled
CI / Test (with prebuilt OCI Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
chore: release v2.1.0
2022-05-05 23:08:55 +07:00
Ahmad Husen 7118f1dd24 chore: release v2.1.0 2022-05-05 23:07:01 +07:00
Ahmad Husen fda333bd87 Merge pull request #18 from kamack38/aur-deps
feat: 🎸 Add option to resolve deps using paru (from AUR)
2022-05-04 19:52:40 +07:00
kamack38 80d76aa524 style: 💄 Fix trailing space in README 2022-04-27 14:12:16 +02:00
kamack38 77f37ad6f1 docs: ✏️ Update docs 2022-04-27 14:10:39 +02:00
kamack38 c3e3ab0325 feat: 🎸 Add option to resolve deps using paru (from AUR) 2022-04-27 14:06:06 +02:00
dependabot[bot] b257397a15 Merge pull request #17 from hapakaien/dependabot/github_actions/actions/checkout-3 2022-03-02 11:24:41 +00:00
dependabot[bot] a4f0a491d0 chore(deps): bump actions/checkout from 2.4.0 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.4.0 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.4.0...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-01 20:28:36 +00:00
Ahmad Husen eadb0293c0 Merge pull request #16 from hapakaien/release/v2.0.3
CI / Test (with Dockerfile) (push) Has been cancelled
CI / Publish OCI image (push) Has been cancelled
CI / Test (with prebuilt OCI Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
chore: release v2.0.3
2022-02-02 15:15:02 +07:00
Ahmad Husen 9400d7c75d chore: release v2.0.3 2022-02-02 15:13:33 +07:00
Ahmad Husen c121cf29d7 Merge pull request #15 from hapakaien/bugfix/pkgbuild-permission
fix: wrong copied PKGBUILD permission
2022-02-02 15:09:47 +07:00
Ahmad Husen 265fe9f569 fix: wrong copied PKGBUILD permission 2022-02-02 15:08:12 +07:00
Ahmad Husen 66d669bebf Merge pull request #14 from hapakaien/v2
CI / Publish OCI image (push) Has been cancelled
CI / Test (with prebuilt OCI Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
CI / Test (with Dockerfile) (push) Has been cancelled
chore: release v2.0.2
2022-02-02 12:06:30 +07:00
Ahmad Husen e346bea956 chore: release v2.0.2 2022-02-02 11:43:57 +07:00
Ahmad Husen 6ade55c2b2 Merge pull request #13 from hapakaien/v2
chore: release v2.0.1
2022-02-02 11:36:26 +07:00
Ahmad Husen 8455f15e27 chore: release v2.0.1 2022-02-02 11:34:30 +07:00
Ahmad Husen 594be7f44a Merge pull request #12 from hapakaien/hotfix/wrong-oci-tag
CI / Publish OCI image (push) Has been cancelled
CI / Test (with prebuilt OCI Image) (push) Has been cancelled
CI / Test (with Dockerfile) (push) Has been cancelled
CI / Release (push) Has been cancelled
fix: wrong oci image tag on action.yml
2022-02-02 11:33:13 +07:00
Ahmad Husen 0a161adbcd fix: wrong oci image tag on action.yml 2022-02-02 11:31:39 +07:00
Ahmad Husen 94c0a400c6 Merge pull request #11 from hapakaien/v2
chore: release v2.0.0
2022-02-02 11:21:48 +07:00
Ahmad Husen cd2e2d62b6 chore: release v2.0.0
CI / Publish OCI image (push) Has been cancelled
CI / Test (with Dockerfile) (push) Has been cancelled
CI / Test (with prebuilt OCI Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
2022-02-02 11:19:55 +07:00
Ahmad Husen 4da3a1b0cc Merge pull request #10 from hapakaien/feature/migrate-to-buildah
feature: replace Docker with Buildah in CI
2022-02-02 11:08:06 +07:00
Ahmad Husen 7926f4fb39 feature: replace Docker with Buildah in CI 2022-02-02 11:03:05 +07:00
Ahmad Husen 863b0d9617 Merge pull request #9 from hapakaien/bugfix/sudoers-user
fix: add user directly into sudoers file
2022-02-02 10:39:52 +07:00
Ahmad Husen 360be955b0 fix: add user directly into sudoers file 2022-02-02 10:38:28 +07:00
dependabot[bot] 6443f058c1 Merge pull request #7 from datakrama/dependabot/github_actions/actions/checkout-2.4.0 2021-11-08 12:00:30 +00:00
dependabot[bot] c05034041f chore(deps): bump actions/checkout from 2.3.5 to 2.4.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.3.5 to 2.4.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.3.5...v2.4.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-02 20:11:55 +00:00
Ahmad Husen d90b1b2689 chore: release v1.1.1
CI / Test (with Dockerfile) (push) Successful in 1m27s
CI / Publish container image (push) Has been cancelled
CI / Test (with prebuilt Container Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
2021-10-26 09:00:00 +07:00
Ahmad Husen 3747c6e38e Merge pull request #6 from datakrama/bugfix/path
fix(bash): .git folder
2021-10-26 08:52:10 +07:00
Ahmad Husen 10816168b7 fix(bash): .git folder 2021-10-26 08:49:09 +07:00
dependabot[bot] 87fb26e440 Merge pull request #5 from datakrama/dependabot/github_actions/actions/checkout-2.3.5 2021-10-26 01:12:05 +00:00
dependabot[bot] 38bb9b95aa chore(deps): bump actions/checkout from 2.3.4 to 2.3.5
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.3.4 to 2.3.5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.3.4...v2.3.5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-15 20:09:36 +00:00
Ahmad Husen 65444430c4 chore: release v1.1.0
CI / Test (with Dockerfile) (push) Successful in 1m21s
CI / Publish container image (push) Has been cancelled
CI / Test (with prebuilt Container Image) (push) Has been cancelled
CI / Release (push) Has been cancelled
2021-10-02 00:09:27 +07:00
Ahmad Husen b3890e00a5 Merge pull request #4 from datakrama/feature/pkgrel
feat: update pkgrel
2021-10-01 22:58:06 +07:00
Ahmad Husen 3487dc866b feat: update pkgrel 2021-10-01 22:54:16 +07:00
Ahmad Husen 581d4292cc Merge pull request #3 from datakrama/feature/pkgver
feat: update pkgver
2021-10-01 22:34:38 +07:00
Ahmad Husen 4d1983388b feat: update pkgver 2021-10-01 22:27:55 +07:00
Ahmad Husen fb6ab46b3f Merge pull request #2 from datakrama/bugfix/missing-bash-set-e
fix(bash): missing 'set e'
2021-10-01 20:41:08 +07:00
Ahmad Husen 796ddff1d3 chore: change branding color 2021-10-01 14:38:53 +07:00
Ahmad Husen 3d91dafd70 fix(bash): missing 'set e' 2021-10-01 13:58:10 +07:00
Ahmad Husen bc46e9c8d4 ci: update sample PKGBUILD 2021-09-30 17:07:53 +07:00
Ahmad Husen 3aa6342a73 feat(container): copy '.git' folder from WORKPATH
CI / Pretest (with Dockerfile) (push) Successful in 1m48s
CI / Test (with pre-built Container Image) (push) Has been cancelled
CI / Publish container image (push) Has been cancelled
2021-05-30 14:24:17 +07:00
Ahmad Husen 8987dba528 feat(container): always under 2021-05-30 14:20:58 +07:00
Ahmad Husen b8114f2ee3 feat(container): change value 2021-05-30 14:14:59 +07:00
Ahmad Husen 42c6bfae1e feat(container): create /tmp folder manually 2021-05-30 14:07:35 +07:00
Ahmad Husen fcedc2d02c feat(container): copy .git to /tmp folder 2021-05-30 14:05:13 +07:00
Ahmad Husen 7f32fc286b feat(container): only copy needed files 2021-05-30 14:00:48 +07:00
Ahmad Husen ec0ee87e6a feat(bash): run all commmand with non-root user 2021-05-30 13:52:20 +07:00
Ahmad Husen 3c654a34ce fix(container): unknown rsync option 2021-05-30 13:38:37 +07:00
Ahmad Husen 65e9437ece feat(container): use rsync instead cp 2021-05-30 13:36:39 +07:00
Ahmad Husen 0593cc597c fix(bash): cp permission 2021-05-30 13:26:06 +07:00
Ahmad Husen 88a8c57641 feat(bash): copying files to /tmp instead of chown 2021-05-30 13:19:29 +07:00
Ahmad Husen f7ff69715a fix(ci): conditional syntax & others
CI / Pretest (with Dockerfile) (push) Successful in 1m49s
CI / Publish container image (push) Has been cancelled
CI / Test (with pre-built Container Image) (push) Has been cancelled
2021-05-26 10:29:34 +07:00
Ahmad Husen 5fa9ff1a99 fix: path for action run 2021-05-26 10:26:23 +07:00
Ahmad Husen b259baf950 fix: syntax on action.yml 2021-05-26 10:21:34 +07:00
Ahmad Husen 77f0819445 ci: don't publish container image when PR pushed 2021-05-24 14:38:32 +07:00
Ahmad Husen 23631f017d fix(ci): wrong operator 2021-05-23 21:45:07 +07:00
Ahmad Husen 9106fe5df2 ci: combine 2 workflow to run asynchronously 2021-05-23 21:43:29 +07:00
Ahmad Husen e2ed7401c9 feat: set grouped output for entrypoint.sh 2021-05-23 20:48:35 +07:00
Ahmad Husen 64596b74e7 feat(docker): change setup user script on Dockerfile 2021-05-23 20:33:16 +07:00
Ahmad Husen b0781d01e1 feat: add missing docker action's metadata input 2021-05-22 18:25:49 +07:00
Ahmad Husen d318fec45e feat: change action to use pre-built container image 2021-05-19 22:28:19 +07:00
7 changed files with 385 additions and 111 deletions
+134 -5
View File
@@ -4,25 +4,34 @@ on:
push:
branches:
- "main"
tags:
- 'v*.*.*'
pull_request:
branches:
- "main"
jobs:
build:
name: Build
pretest:
name: Test (with Dockerfile)
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2.3.4
uses: actions/checkout@v4
- name: Update action.yml to build locally
run: |
sed -i 's/.*image\:.*/ image\: \"Dockerfile\"/' action.yml
cat action.yml
- name: Get sample PKGBUILD
run: wget https://github.com/official-human/nonicons-font/raw/main/PKGBUILD
run: wget https://github.com/${{ github.repository_owner }}/plenti-bin/raw/f5ffaaee02a2119aa16f6b7a27e87e198e096b47/PKGBUILD
- name: Test actions
- name: Running test
uses: ./
with:
pkgver: '0.4.26'
pkgrel: 2
updpkgsums: true
srcinfo: true
@@ -31,3 +40,123 @@ jobs:
ls -la
git diff PKGBUILD
git diff .SRCINFO
publish:
name: Publish OCI image
needs: pretest
if: github.event_name != 'pull_request'
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Log in to ghcr.io
uses: redhat-actions/podman-login@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: OCI metadata
id: metadata
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}
tags: |
type=edge,branch=main
type=ref,event=branch
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}
type=sha
- name: Build image
id: build
uses: redhat-actions/buildah-build@v2
with:
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}
containerfiles: |
./Dockerfile
extra-args: |
--pull
- name: Push to ghcr.io
uses: redhat-actions/push-to-registry@v2
with:
image: ${{ steps.build.outputs.image }}
tags: ${{ steps.build.outputs.tags }}
registry: ghcr.io
extra-args: |
--disable-content-trust
test:
name: Test (with prebuilt OCI Image)
needs: publish
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get sample PKGBUILD
run: wget https://github.com/${{ github.repository_owner }}/plenti-bin/raw/f5ffaaee02a2119aa16f6b7a27e87e198e096b47/PKGBUILD
- name: Update action.yml to use edge tagged container image
if: github.ref == 'refs/heads/main'
run: |
REPOSITORY_OWNER=${{ github.repository_owner }}
REPOSITORY_OWNER=$(echo $REPOSITORY_OWNER | tr '[:upper:]' '[:lower:]')
REPOSITORY_NAME=${{ github.event.repository.name }}
REPOSITORY_NAME=$(echo $REPOSITORY_NAME | tr '[:upper:]' '[:lower:]')
sed -i "s/.*image\:.*/ image\: \"docker\:\/\/ghcr.io\/${REPOSITORY_OWNER}\/${REPOSITORY_NAME}\:edge\"/" action.yml
cat action.yml
- name: Running test
uses: ./
with:
pkgver: '0.4.26'
pkgrel: 2
updpkgsums: true
srcinfo: true
- name: Show diff
run: |
ls -la
git diff PKGBUILD
git diff .SRCINFO
release:
name: Release
runs-on: ubuntu-latest
needs: test
if: startsWith(github.ref, 'refs/tags/v')
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get branch/tag names
id: branch-name
uses: tj-actions/branch-names@v8
with:
strip_tag_prefix: "v"
- name: Read changelog
id: changelog-reader
uses: mindsers/changelog-reader-action@v2
with:
version: ${{ steps.branch-name.outputs.tag }}
path: ./CHANGELOG.md
- name: Create/update release
uses: ncipollo/release-action@v1
with:
tag: v${{ steps.branch-name.outputs.tag }}
name: v${{ steps.branch-name.outputs.tag }}
body: ${{ steps.changelog-reader.outputs.changes }}
allowUpdates: true
token: ${{ secrets.GITHUB_TOKEN }}
-51
View File
@@ -1,51 +0,0 @@
name: CD
on:
push:
branches:
- 'main'
tags:
- 'v*.*.*'
jobs:
container:
name: Publish container image
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: OCI meta
id: meta
uses: docker/metadata-action@v3
with:
images: ghcr.io/${{ github.repository }}
tags: |
type=edge,branch=main
type=ref,event=branch
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}
type=sha
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to GHCR
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v2
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
+120
View File
@@ -0,0 +1,120 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
## [2.2.1] - 2024-02-19
### Fixed
- Can't pull docker image, so sorry guys
## [2.2.0] - 2022-08-05
### Added
- Option to update archlinux-keyring - by @ReenigneArcher
- Make repository name lowercase - by @ReenigneArcher
## [2.1.1] - 2022-05-15
### Fixed
- Wrong conditional using paru
## [2.1.0] - 2022-05-05
### Added
- Option to resolve deps using paru (from AUR) - by @kamack38
## [2.0.3] - 2022-02-02
### Fixed
- Copied PKGBUILD file has wrong permission
## [2.0.2] - 2022-02-02
### Fixed
- CI can not read changelog
## [2.0.1] - 2022-02-02
### Fixed
- Wrong OCI image tag at action.yml
## [2.0.0] - 2022-02-02
### Changed
- Move repo from hapakaien to hapakaien
- `builder` user is added to sudoers directly instead of via the wheel group
- Replace Docker with Buildah in CI
### Fixed
- `builder` is not in the sudoers file
## [1.1.1] - 2021-10-26
### Fixed
- Wrong `.git` folder when using `path` parameter
## [1.1.0] - 2021-10-02
### Added
- Update `pkgver` on PKGBUILD
- Update `pkgrel` on PKGBUILD
### Fixed
- Missing `set -e` on bash
## [1.0.3] - 2021-05-30
### Fixed
- $GITHUB_WORKSPACE permission in step after using this action
## [1.0.2] - 2021-05-26
### Fixed
- Docker runner syntax
- Path sntax
## [1.0.1] - 2021-05-19
### Fixed
- Missing documentation
## [1.0.0] - 2021-05-19
### Added
- Initial release
[Unreleased]: https://github.com/hapakaien/archlinux-package-action/compare/v2.2.0...HEAD
[2.2.0]: https://github.com/hapakaien/archlinux-package-action/compare/v2.1.1...v2.2.0
[2.1.1]: https://github.com/hapakaien/archlinux-package-action/compare/v2.1.0...v2.1.1
[2.1.0]: https://github.com/hapakaien/archlinux-package-action/compare/v2.0.3...v2.1.0
[2.0.3]: https://github.com/hapakaien/archlinux-package-action/compare/v2.0.2...v2.0.3
[2.0.2]: https://github.com/hapakaien/archlinux-package-action/compare/v2.0.1...v2.0.2
[2.0.1]: https://github.com/hapakaien/archlinux-package-action/compare/v2.0.0...v2.0.1
[2.0.0]: https://github.com/hapakaien/archlinux-package-action/compare/v1.1.1...v2.0.0
[1.1.1]: https://github.com/hapakaien/archlinux-package-action/compare/v1.1.0...v1.1.1
[1.1.0]: https://github.com/hapakaien/archlinux-package-action/compare/v1.0.3...v1.1.0
[1.0.3]: https://github.com/hapakaien/archlinux-package-action/compare/v1.0.2...v1.0.3
[1.0.2]: https://github.com/hapakaien/archlinux-package-action/compare/v1.0.1...v1.0.2
[1.0.1]: https://github.com/hapakaien/archlinux-package-action/compare/v1.0.0...v1.0.1
[1.0.0]: https://github.com/hapakaien/archlinux-package-action/releases/tag/v1.0.0
+7 -2
View File
@@ -6,8 +6,13 @@ RUN pacman -Syu --needed --noconfirm pacman-contrib namcap git
# Setup user
RUN useradd -m builder && \
usermod -aG wheel builder && \
echo 'wheel ALL=(ALL:ALL) ALL' >> /etc/sudoers
echo 'builder ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
WORKDIR /home/builder
USER builder
# Install paru
RUN git clone https://aur.archlinux.org/paru-bin.git
RUN cd paru-bin && makepkg -si --noconfirm
# Copy files
COPY LICENSE README.md /
+25 -19
View File
@@ -1,32 +1,40 @@
# Arch Linux's package tools action
[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/datakrama/archlinux-package-action/CI?label=CI&style=flat-square)](https://github.com/datakrama/archlinux-package-action/actions) [![GitHub release (latest by date)](https://img.shields.io/github/v/release/datakrama/archlinux-package-action?style=flat-square)](https://github.com/datakrama/archlinux-package-action/releases) [![GitHub](https://img.shields.io/github/license/datakrama/archlinux-package-action?style=flat-square)](./LICENSE)
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/heyhusen/archlinux-package-action/main.yml?style=flat-square&label=CI)](https://github.com/heyhusen/archlinux-package-action/actions) [![GitHub release (latest by date)](https://img.shields.io/github/v/release/heyhusen/archlinux-package-action?style=flat-square)](https://github.com/heyhusen/archlinux-package-action/releases) [![GitHub](https://img.shields.io/github/license/heyhusen/archlinux-package-action?style=flat-square)](./LICENSE)
This action allows running tools needed for creating Arch Linux (and AUR) package.
Here's what this action can do:
- Update checksums on PKGBUILD file
- Generate [.SRCINFO](https://wiki.archlinux.org/title/.SRCINFO) based on your PKGBUILD
- Update `pkgver`, `pkgrel`, or checksums on PKGBUILD file
- Validate PKGBUILD with [namcap](https://wiki.archlinux.org/title/namcap)
- Generate [.SRCINFO](https://wiki.archlinux.org/title/.SRCINFO) based on your PKGBUILD
- Run [makepkg](https://wiki.archlinux.org/title/Makepkg) with custom flags (rather than default)
## Usage
### Requirement
- [PKGBUILD](https://wiki.archlinux.org/title/PKGBUILD) file inside your repository.
- Use [actions/checkout](https://github.com/actions/checkout) in previous step. This is important, unless you want your [$GITHUB_WORKSPACE](https://docs.github.com/en/actions/reference/environment-variables#default-environment-variables) folder to be empty.
### Customizing
Following inputs can be used as `step.with` keys
| Name | Type | Default | Required | Description |
|-------------------|-----------|-------------------------------|-----------|---------------------------------------|
| `path` | String | $GITHUB_WORKSPACE | `false` | Path where PKGBUILD is located |
| `updpkgsums` | Boolean | `false` | `false` | Update checksums on your PKGBUILD |
| `srcinfo` | Boolean | `false` | `false` | Generate new .SRCINFO |
| `namcap` | Boolean | `true` | `false` | Validate PKGBUILD |
| `flags` | String | `-cfs --noconfirm` | `false` | Flags after `makepkg` command. Leave this empty will disable this command. |
| Name | Type | Default | Required | Description |
| -------------------------- | ------- | ------------------ | -------- | -------------------------------------------------------------------------------- |
| `path` | String | | `false` | Path where PKGBUILD is located. This path always located under $GITHUB_WORKSPACE |
| `pkgver` | String | | `false` | Update `pkgver` on your PKGBUILD |
| `pkgrel` | Integer | | `false` | Update `pkgrel` on your PKGBUILD |
| `updpkgsums` | Boolean | `false` | `false` | Update checksums on your PKGBUILD |
| `srcinfo` | Boolean | `false` | `false` | Generate new .SRCINFO |
| `namcap` | Boolean | `true` | `false` | Validate PKGBUILD |
| `flags` | String | `-cfs --noconfirm` | `false` | Flags after `makepkg` command. Leave this empty will disable this command. |
| `aur` | Boolean | `false` | `false` | Resolve dependencies using paru |
| `update_archlinux_keyring` | Boolean | `true` | `false` | Update the archlinux keyring |
### Examples
#### 1. Basic
This action will run `makepkg -cfs --noconfirm` command, then validate PKGBUILD with namcap.
@@ -46,12 +54,11 @@ jobs:
uses: actions/checkout@v2
- name: Validate package
uses: datakrama/archlinux-package-action@v1
uses: heyhusen/archlinux-package-action@v2
```
#### 2. Only generate .SRCINFO
```yaml
name: CI
@@ -67,7 +74,7 @@ jobs:
uses: actions/checkout@v2
- name: Validate package
uses: datakrama/archlinux-package-action@v1
uses: heyhusen/archlinux-package-action@v2
with:
flags: ''
namcap: false
@@ -76,7 +83,6 @@ jobs:
#### 3. Only update checksums on PKGBUILD
```yaml
name: CI
@@ -92,7 +98,7 @@ jobs:
uses: actions/checkout@v2
- name: Validate package
uses: datakrama/archlinux-package-action@v1
uses: heyhusen/archlinux-package-action@v2
with:
flags: ''
namcap: false
@@ -101,7 +107,6 @@ jobs:
#### 4. Custom path & custom flags
```yaml
name: CI
@@ -117,12 +122,13 @@ jobs:
uses: actions/checkout@v2
- name: Validate package
uses: datakrama/archlinux-package-action@v1
uses: heyhusen/archlinux-package-action@v2
with:
path: $GITHUB_WORKSPACE/package
path: package
flags: '-si --noconfirm'
namcap: false
```
## License
The scripts and documentation in this project are released under the [MIT License](./LICENSE)
The scripts and documentation in this project are released under the [MIT License](LICENSE)
+35 -15
View File
@@ -1,39 +1,59 @@
# https://help.github.com/en/articles/metadata-syntax-for-github-actions
name: "Arch Linux's package action"
description: "GitHub Action to run Arch Linux's package tools"
author: "datakrama"
author: 'heyhusen'
branding:
icon: "package"
color: "green"
icon: 'package'
color: 'blue'
inputs:
path:
description: "Location for this action to run"
default: ""
description: 'Location for this action to run'
default: ''
required: false
pkgver:
description: 'Update pkgver on PKGBUILD'
default: ''
required: false
pkgrel:
description: 'Update pkgrel on PKGBUILD'
default: ''
required: false
updpkgsums:
description: "Update checksums on PKGBUILD"
default: "false"
description: 'Update checksums on PKGBUILD'
default: 'false'
required: false
srcinfo:
description: "Generate new .SRCINFO"
default: "false"
description: 'Generate new .SRCINFO'
default: 'false'
required: false
flags:
description: "Extra flags for makepkg"
default: "-cfs --noconfirm"
description: 'Extra flags for makepkg'
default: '-cfs --noconfirm'
required: false
namcap:
description: "Validate package with namcap"
default: "true"
description: 'Validate package with namcap'
default: 'true'
required: false
aur:
description: 'Resolve dependencies using paru'
default: 'false'
required: false
update_archlinux_keyring:
description: 'Update archlinux-keyring'
default: 'true'
required: false
runs:
using: "docker"
image: "Dockerfile"
using: 'docker'
image: 'docker://ghcr.io/heyhusen/archlinux-package-action:2'
args:
- ${{ inputs.path }}
- ${{ inputs.pkgver }}
- ${{ inputs.pkgrel }}
- ${{ inputs.updpkgsums }}
- ${{ inputs.srcinfo }}
- ${{ inputs.flags }}
- ${{ inputs.namcap }}
- ${{ inputs.aur }}
- ${{ inputs.update_archlinux_keyring }}
+63 -18
View File
@@ -1,37 +1,82 @@
#!/bin/sh -l
#!/bin/bash
set -e
# Set path
WORKPATH=$GITHUB_WORKSPACE
if [[ -n "$INPUT_PATH" ]]; then
WORKPATH=$INPUT_PATH
WORKPATH=$GITHUB_WORKSPACE/$INPUT_PATH
HOME=/home/builder
echo "::group::Copying files from $WORKPATH to $HOME/gh-action"
# Set path permision
cd $HOME
mkdir gh-action
cd gh-action
cp -rfv "$GITHUB_WORKSPACE"/.git ./
cp -fv "$WORKPATH"/PKGBUILD ./
echo "::endgroup::"
# Update archlinux-keyring
if [[ $INPUT_ARCHLINUX_KEYRING == true ]]; then
echo "::group::Updating archlinux-keyring"
pacman -S archlinux-keyring
echo "::endgroup::"
fi
# Set path permision
sudo chown -R builder $WORKPATH
cd $WORKPATH
# Update pkgver
if [[ -n $INPUT_PKGVER ]]; then
echo "::group::Updating pkgver on PKGBUILD"
sed -i "s:^pkgver=.*$:pkgver=$INPUT_PKGVER:g" PKGBUILD
git diff PKGBUILD
echo "::endgroup::"
fi
# Update pkgver
if [[ -n $INPUT_PKGREL ]]; then
echo "::group::Updating pkgrel on PKGBUILD"
sed -i "s:^pkgrel=.*$:pkgrel=$INPUT_PKGREL:g" PKGBUILD
git diff PKGBUILD
echo "::endgroup::"
fi
# Update checksums
if [[ $INPUT_UPDPKGSUMS == true ]]; then
echo "Update checksums on PKGBUILD"
sudo -u builder updpkgsums
echo "::group::Updating checksums on PKGBUILD"
updpkgsums
git diff PKGBUILD
echo "::endgroup::"
fi
# Generate .SRCINFO
if [[ $INPUT_SRCINFO == true ]]; then
echo "Generate new .SRCINFO based on PKGBUILD"
sudo -u builder makepkg --printsrcinfo > .SRCINFO
echo "::group::Generating new .SRCINFO based on PKGBUILD"
makepkg --printsrcinfo >.SRCINFO
git diff .SRCINFO
fi
# Run makepkg
if [[ -n "$INPUT_FLAGS" ]]; then
echo "Run makepkg with flags"
sudo -u builder makepkg $INPUT_FLAGS
echo "::endgroup::"
fi
# Validate with namcap
if [[ $INPUT_NAMCAP == true ]]; then
echo "Validate PKGBUILD with namcap"
echo "::group::Validating PKGBUILD with namcap"
namcap -i PKGBUILD
echo "::endgroup::"
fi
# Install depends using paru from aur
if [[ $INPUT_AUR == true ]]; then
echo "::group::Installing depends using paru"
source PKGBUILD
paru -Syu --removemake --needed --noconfirm "${depends[@]}" "${makedepends[@]}"
echo "::endgroup::"
fi
# Run makepkg
if [[ -n $INPUT_FLAGS ]]; then
echo "::group::Running makepkg with flags"
makepkg $INPUT_FLAGS
echo "::endgroup::"
fi
echo "::group::Copying files from $HOME/gh-action to $WORKPATH"
sudo cp -fv PKGBUILD "$WORKPATH"/PKGBUILD
if [[ -e .SRCINFO ]]; then
sudo cp -fv .SRCINFO "$WORKPATH"/.SRCINFO
fi
echo "::endgroup::"