This repository has been archived by the owner on Jun 5, 2024. It is now read-only.
Bump docker/login-action from 2 to 3 (#94) #31
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Push image to ghcr" | |
on: | |
push: | |
branches: [master] | |
tags: | |
- v*.*.* | |
release: | |
types: [created] | |
env: | |
REGISTRY: ghcr.io | |
IMAGE_NAME: wanjohiryan/arc3dia | |
BASE_TAG_PREFIX: base | |
jobs: | |
build-go: | |
name: Build arc3dia go executable | |
runs-on: ubuntu-latest | |
steps: | |
- | |
name: Checkout repo | |
uses: actions/checkout@v4 | |
- | |
name: Set up Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.18 | |
- | |
name: Build binary | |
run: go build -v ./ | |
- | |
name: Upload artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: gobinary | |
path: ./Arc3dia | |
retention-days: 5 | |
build-and-push-git-pkg: | |
name: Build docker base image | |
runs-on: ubuntu-latest | |
needs: | |
- build-go | |
permissions: | |
contents: read | |
packages: write | |
# | |
# do not run on forks | |
if: github.repository_owner == 'wanjohiryan' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Log into registry ${{ env.REGISTRY }} | |
uses: docker/login-action@v3 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Extract Container metadata | |
id: meta | |
uses: docker/metadata-action@v5 | |
with: | |
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}/${{ env.BASE_TAG_PREFIX }} | |
# | |
#tag on release, and a nightly build for 'dev' | |
tags: | | |
type=raw,value=nightly,enable={{is_default_branch}} | |
type=ref,event=tag | |
type=semver,pattern={{version}} | |
type=semver,pattern={{major}}.{{minor}} | |
type=semver,pattern={{major}} | |
- | |
name: Download go binary | |
uses: actions/download-artifact@v3 | |
with: | |
name: gobinary | |
path: ./ | |
- name: Build and push image | |
uses: docker/build-push-action@v4 | |
with: | |
context: ./ | |
file: docker/base/Dockerfile | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} |