Merge pull request #1514 from acelaya-forks/feature/ghcr-support

Feature/ghcr support
This commit is contained in:
Alejandro Celaya 2022-08-14 17:12:56 +02:00 committed by GitHub
commit fa5b512629
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 7 deletions

View file

@ -14,15 +14,21 @@ jobs:
- name: Checkout code - name: Checkout code
uses: actions/checkout@v3 uses: actions/checkout@v3
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v1 uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1 uses: docker/setup-buildx-action@v2
with: with:
version: latest version: latest
- name: Login to docker hub - name: Login to docker hub
uses: docker/login-action@v1 uses: docker/login-action@v2
with: with:
username: ${{ secrets.DOCKER_USERNAME }} username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }} password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build the image - name: Login to GitHub container registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GHCR_PAT }}
- name: Build and push the image
run: bash ./docker/build run: bash ./docker/build

View file

@ -27,6 +27,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com), and this
Non-error responses are not affected. Non-error responses are not affected.
* [#1513](https://github.com/shlinkio/shlink/issues/1513) Added publishing of the docker image in GHCR.
### Changed ### Changed
* [#1339](https://github.com/shlinkio/shlink/issues/1339) Added new test suite for CLI E2E tests. * [#1339](https://github.com/shlinkio/shlink/issues/1339) Added new test suite for CLI E2E tests.
* [#1503](https://github.com/shlinkio/shlink/issues/1503) Drastically improved build time in GitHub Actions, by optimizing parallelization, adding php extensions cache and running mutation tests only for changed files. * [#1503](https://github.com/shlinkio/shlink/issues/1503) Drastically improved build time in GitHub Actions, by optimizing parallelization, adding php extensions cache and running mutation tests only for changed files.

View file

@ -8,9 +8,9 @@ DOCKER_IMAGE="shlinkio/shlink"
# If ref is not develop, then this is a tag. Build that docker tag and also "stable" # If ref is not develop, then this is a tag. Build that docker tag and also "stable"
if [[ "$GITHUB_REF" != *"develop"* ]]; then if [[ "$GITHUB_REF" != *"develop"* ]]; then
VERSION=${GITHUB_REF#refs/tags/v} VERSION=${GITHUB_REF#refs/tags/v}
TAGS="-t ${DOCKER_IMAGE}:${VERSION}" TAGS="-t ${DOCKER_IMAGE}:${VERSION} -t ghcr.io/${DOCKER_IMAGE}:${VERSION}"
# Push stable tag only if this is not an alpha or beta tag # Push stable tag only if this is not an alpha or beta tag
[[ $GITHUB_REF != *"alpha"* && $GITHUB_REF != *"beta"* ]] && TAGS="${TAGS} -t ${DOCKER_IMAGE}:stable" [[ $GITHUB_REF != *"alpha"* && $GITHUB_REF != *"beta"* ]] && TAGS="${TAGS} -t ${DOCKER_IMAGE}:stable -t ghcr.io/${DOCKER_IMAGE}:stable"
docker buildx build --push \ docker buildx build --push \
--build-arg SHLINK_VERSION=${VERSION} \ --build-arg SHLINK_VERSION=${VERSION} \
@ -21,5 +21,5 @@ if [[ "$GITHUB_REF" != *"develop"* ]]; then
elif [[ "$GITHUB_REF" == *"develop"* ]]; then elif [[ "$GITHUB_REF" == *"develop"* ]]; then
docker buildx build --push \ docker buildx build --push \
--platform ${PLATFORMS} \ --platform ${PLATFORMS} \
-t ${DOCKER_IMAGE}:latest . -t ${DOCKER_IMAGE}:latest -t ghcr.io/${DOCKER_IMAGE}:latest .
fi fi