Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Merge pull request #1044 from stakater/update-version-eerd6gw#195

Merge pull request #1044 from stakater/update-version-eerd6gw

Merge pull request #1044 from stakater/update-version-eerd6gw #195

Workflow file for this run

name:Release Go project
on:
push:
tags:
-"v*"
env:
DOCKER_FILE_PATH:Dockerfile
DOCKER_UBI_FILE_PATH:Dockerfile.ubi
KUBERNETES_VERSION:"1.30.0"
KIND_VERSION:"0.23.0"
REGISTRY:ghcr.io
jobs:
release:
permissions:
contents:read
packages:write# to push artifacts to `ghcr.io`
name:GoReleaser build
runs-on:ubuntu-latest
steps:
-name:Check out code
uses:actions/checkout@v5
with:
token:${{ secrets.PUBLISH_TOKEN }}
fetch-depth:0# otherwise, you will fail to push refs to dest repo
submodules:recursive
# Setting up helm binary
-name:Set up Helm
uses:azure/setup-helm@v4
with:
version:v3.11.3
-name:Set up Go
uses:actions/setup-go@v6
with:
go-version-file:'go.mod'
check-latest:true
cache:true
-name:Install Dependencies
run:|
make install
-name:Run golangci-lint
run:make lint
-name:Install kubectl
run:|
curl -LO "https://storage.googleapis.com/kubernetes-release/release/v${KUBERNETES_VERSION}/bin/linux/amd64/kubectl"
sudo install ./kubectl /usr/local/bin/ && rm kubectl
kubectl version --client=true
-name:Install Kind
run:|
curl -L -o kind https://github.com/kubernetes-sigs/kind/releases/download/v${KIND_VERSION}/kind-linux-amd64
sudo install ./kind /usr/local/bin && rm kind
kind version
kind version | grep -q ${KIND_VERSION}
-name:Create Kind Cluster
run:|
kind create cluster
kubectl cluster-info
-name:Test
run:make test
-name:Get Tag from Github Ref
id:generate_tag
run:echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_OUTPUT
-name:Create timestamp
id:prep
run:echo "created=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> $GITHUB_OUTPUT
-name:Set up QEMU
uses:docker/setup-qemu-action@v3
-name:Set up Docker Buildx
uses:docker/setup-buildx-action@v3
-name:Login to Docker Registry
uses:docker/login-action@v3
with:
username:${{ secrets.STAKATER_DOCKERHUB_USERNAME }}
password:${{ secrets.STAKATER_DOCKERHUB_PASSWORD }}
-name:Generate image repository path for Docker registry
run:|
echo DOCKER_IMAGE_REPOSITORY=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV
-name:Build and Push Docker Image to Docker registry
uses:docker/build-push-action@v6
with:
context:.
file:${{ env.DOCKER_FILE_PATH }}
pull:true
push:true
cache-to:type=inline
platforms:linux/amd64,linux/arm,linux/arm64
tags:|
${{ env.DOCKER_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.RELEASE_VERSION }}
build-args:|
VERSION=${{ steps.generate_tag.outputs.RELEASE_VERSION }}
COMMIT=${{ github.sha }}
BUILD_DATE=${{ steps.prep.outputs.created }}
labels:|
org.opencontainers.image.source=${{ github.event.repository.clone_url }}
org.opencontainers.image.created=${{ steps.prep.outputs.created }}
org.opencontainers.image.revision=${{ github.sha }}
-name:Build and Push Docker UBI Image to Docker registry
uses:docker/build-push-action@v6
with:
context:.
file:${{ env.DOCKER_UBI_FILE_PATH }}
pull:true
push:true
build-args:|
BUILDER_IMAGE=${{ env.DOCKER_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.RELEASE_VERSION }}
cache-to:type=inline
platforms:linux/amd64,linux/arm64
tags:|
${{ env.DOCKER_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.RELEASE_VERSION }}-ubi
labels:|
org.opencontainers.image.source=${{ github.event.repository.clone_url }}
org.opencontainers.image.created=${{ steps.prep.outputs.created }}
org.opencontainers.image.revision=${{ github.sha }}
-name:Login to ghcr registry
uses:docker/login-action@v3
with:
registry:${{env.REGISTRY}}
username:stakater-user
password:${{secrets.GITHUB_TOKEN}}
-name:Generate image repository path for ghcr registry
run:|
echo GHCR_IMAGE_REPOSITORY=${{env.REGISTRY}}/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV
# tag this image as latest as it will be used in plain manifests
-name:Build and Push Docker Image to ghcr registry
uses:docker/build-push-action@v6
with:
context:.
file:${{ env.DOCKER_FILE_PATH }}
pull:true
push:true
cache-to:type=inline
platforms:linux/amd64,linux/arm,linux/arm64
tags:|
${{ env.GHCR_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.RELEASE_VERSION }},${{ env.GHCR_IMAGE_REPOSITORY }}:latest
build-args:|
VERSION=${{ steps.generate_tag.outputs.RELEASE_VERSION }}
COMMIT=${{ github.sha }}
BUILD_DATE=${{ steps.prep.outputs.created }}
labels:|
org.opencontainers.image.source=${{ github.event.repository.clone_url }}
org.opencontainers.image.created=${{ steps.prep.outputs.created }}
org.opencontainers.image.revision=${{ github.sha }}
-name:Build and Push Docker UBI Image to ghcr registry
uses:docker/build-push-action@v6
with:
context:.
file:${{ env.DOCKER_UBI_FILE_PATH }}
pull:true
push:true
build-args:|
BUILDER_IMAGE=${{ env.GHCR_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.RELEASE_VERSION }}
cache-to:type=inline
platforms:linux/amd64,linux/arm64
tags:|
${{ env.GHCR_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.RELEASE_VERSION }}-ubi
labels:|
org.opencontainers.image.source=${{ github.event.repository.clone_url }}
org.opencontainers.image.created=${{ steps.prep.outputs.created }}
org.opencontainers.image.revision=${{ github.sha }}
-name:Build and Push Docker Image for Docs to ghcr registry
uses:docker/build-push-action@v6
with:
context:.
file:Dockerfile-docs
pull:true
push:true
cache-to:type=inline
tags:|
${{ env.GHCR_IMAGE_REPOSITORY }}/docs:${{ steps.generate_tag.outputs.RELEASE_VERSION }}
labels:|
org.opencontainers.image.source=${{ github.event.repository.clone_url }}
org.opencontainers.image.created=${{ steps.prep.outputs.created }}
org.opencontainers.image.revision=${{ github.sha }}
##############################
## Add steps to generate required artifacts for a release here(helm chart, operator manifest etc.)
##############################
-name:Run GoReleaser
uses:goreleaser/goreleaser-action@master
with:
version:latest
args:release --clean
env:
GITHUB_TOKEN:${{ secrets.PUBLISH_TOKEN }}
-name:Notify Slack
uses:8398a7/action-slack@v3
if:always()# Pick up events even if the job fails or is canceled.
with:
status:${{ job.status }}
fields:repo,author,action,eventName,ref,workflow
env:
GITHUB_TOKEN:${{ secrets.PUBLISH_TOKEN }}
SLACK_WEBHOOK_URL:${{ secrets.STAKATER_DELIVERY_SLACK_WEBHOOK }}

[8]ページ先頭

©2009-2025 Movatter.jp