mirror of
https://github.com/navidrome/navidrome.git
synced 2025-04-13 10:47:19 +03:00
* refactor(ci): faster pipeline, add support for darwin/arm64 (#26) * feat: WIP * feat: WIP - all except windows * fix: Bump crazymax/osxcross to 14.5 * feat: bundle UI * fix: works on all 10! * fix: WIP * fix: add git sha and tag * fix: download taglib from cross-taglib * feat: add more dependabot coverage * feat: build JS bundle using Docker * refactor: pipeline * fix: wip * fix: wip * fix: wip * fix: wip * fix: wip * fix: wip * fix: wip * fix: wip * fix: wip * fix: real * fix: no container * fix: no container * fix: pkg-config * fix: pkg-config * fix: pkg-config * fix: pkg-config * fix: pkg-config * fix: add lint * fix: add lint * fix: add lint * fix: add lint * fix: add lint * fix: add lint * fix: add js * fix: gittags * fix: gittags * test: is_release * test: is_release * test: is_release * test: push image * test: push image * test: push image * test: push image * test: push image * test: push image * test: push image * test: push image * test: push image * fix: extract download taglib action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: extract prepare docker action * fix: add msi * fix: add msi * fix: add msi * fix: add msi * fix: add msi * test: full * test: full * test: disable some platforms to avoid hitting the rate limit * test: disable some platforms to avoid hitting the rate limit * fix: use ecr.aws for base images * test: full release * test: full release * fix: clean-up * refactor: pipeline clean-up (#32) * fix: clean-up * fix: clean-up * fix: clean-up * fix: fetch all tags * fix: version * fix: version * fix: no need to setup QEMU * fix: don't try to push images in unauthorized branches * fix: check push enabled * fix: change layout?
85 lines
2.5 KiB
YAML
85 lines
2.5 KiB
YAML
name: 'Prepare Docker Buildx environment'
|
|
description: 'Downloads and extracts the TagLib library, adding it to PKG_CONFIG_PATH'
|
|
inputs:
|
|
github_token:
|
|
description: 'GitHub token'
|
|
required: true
|
|
default: ''
|
|
hub_repository:
|
|
description: 'Docker Hub repository to push images to'
|
|
required: false
|
|
default: ''
|
|
hub_username:
|
|
description: 'Docker Hub username'
|
|
required: false
|
|
default: ''
|
|
hub_password:
|
|
description: 'Docker Hub password'
|
|
required: false
|
|
default: ''
|
|
outputs:
|
|
tags:
|
|
description: 'Docker image tags'
|
|
value: ${{ steps.meta.outputs.tags }}
|
|
labels:
|
|
description: 'Docker image labels'
|
|
value: ${{ steps.meta.outputs.labels }}
|
|
annotations:
|
|
description: 'Docker image annotations'
|
|
value: ${{ steps.meta.outputs.annotations }}
|
|
version:
|
|
description: 'Docker image version'
|
|
value: ${{ steps.meta.outputs.version }}
|
|
hub_repository:
|
|
description: 'Docker Hub repository'
|
|
value: ${{ env.DOCKER_HUB_REPO }}
|
|
hub_enabled:
|
|
description: 'Is Docker Hub enabled'
|
|
value: ${{ env.DOCKER_HUB_ENABLED }}
|
|
|
|
runs:
|
|
using: 'composite'
|
|
steps:
|
|
- name: Check Docker Hub configuration
|
|
shell: bash
|
|
run: |
|
|
if [ -z "${{inputs.hub_repository}}" ]; then
|
|
echo "DOCKER_HUB_REPO=none" >> $GITHUB_ENV
|
|
echo "DOCKER_HUB_ENABLED=false" >> $GITHUB_ENV
|
|
else
|
|
echo "DOCKER_HUB_REPO=${{inputs.hub_repository}}" >> $GITHUB_ENV
|
|
echo "DOCKER_HUB_ENABLED=true" >> $GITHUB_ENV
|
|
fi
|
|
|
|
- name: Login to Docker Hub
|
|
if: inputs.hub_username != '' && inputs.hub_password != ''
|
|
uses: docker/login-action@v3
|
|
with:
|
|
username: ${{ inputs.hub_username }}
|
|
password: ${{ inputs.hub_password }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
password: ${{ inputs.github_token }}
|
|
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Extract metadata for Docker image
|
|
id: meta
|
|
uses: docker/metadata-action@v5
|
|
with:
|
|
labels: |
|
|
maintainer=deluan@navidrome.org
|
|
images: |
|
|
name=${{env.DOCKER_HUB_REPO}},enable=${{env.DOCKER_HUB_ENABLED}}
|
|
name=ghcr.io/${{ github.repository }}
|
|
tags: |
|
|
type=ref,event=pr
|
|
type=semver,pattern={{version}}
|
|
type=raw,value=develop,enable={{is_default_branch}}
|