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

Commit7d762c0

Browse files
Create docker-publish.yml
1 parentfca7cd7 commit7d762c0

File tree

1 file changed

+98
-0
lines changed

1 file changed

+98
-0
lines changed

‎.github/workflows/docker-publish.yml

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
name:Docker
2+
3+
# This workflow uses actions that are not certified by GitHub.
4+
# They are provided by a third-party and are governed by
5+
# separate terms of service, privacy policy, and support
6+
# documentation.
7+
8+
on:
9+
schedule:
10+
-cron:'27 0 * * *'
11+
push:
12+
branches:[ "main" ]
13+
# Publish semver tags as releases.
14+
tags:[ 'v*.*.*' ]
15+
pull_request:
16+
branches:[ "main" ]
17+
18+
env:
19+
# Use docker.io for Docker Hub if empty
20+
REGISTRY:ghcr.io
21+
# github.repository as <account>/<repo>
22+
IMAGE_NAME:${{ github.repository }}
23+
24+
25+
jobs:
26+
build:
27+
28+
runs-on:ubuntu-latest
29+
permissions:
30+
contents:read
31+
packages:write
32+
# This is used to complete the identity challenge
33+
# with sigstore/fulcio when running outside of PRs.
34+
id-token:write
35+
36+
steps:
37+
-name:Checkout repository
38+
uses:actions/checkout@v4
39+
40+
# Install the cosign tool except on PR
41+
# https://github.com/sigstore/cosign-installer
42+
-name:Install cosign
43+
if:github.event_name != 'pull_request'
44+
uses:sigstore/cosign-installer@59acb6260d9c0ba8f4a2f9d9b48431a222b68e20#v3.5.0
45+
with:
46+
cosign-release:'v2.2.4'
47+
48+
# Set up BuildKit Docker container builder to be able to build
49+
# multi-platform images and export cache
50+
# https://github.com/docker/setup-buildx-action
51+
-name:Set up Docker Buildx
52+
uses:docker/setup-buildx-action@f95db51fddba0c2d1ec667646a06c2ce06100226# v3.0.0
53+
54+
# Login against a Docker registry except on PR
55+
# https://github.com/docker/login-action
56+
-name:Log into registry ${{ env.REGISTRY }}
57+
if:github.event_name != 'pull_request'
58+
uses:docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d# v3.0.0
59+
with:
60+
registry:${{ env.REGISTRY }}
61+
username:${{ github.actor }}
62+
password:${{ secrets.GITHUB_TOKEN }}
63+
64+
# Extract metadata (tags, labels) for Docker
65+
# https://github.com/docker/metadata-action
66+
-name:Extract Docker metadata
67+
id:meta
68+
uses:docker/metadata-action@96383f45573cb7f253c731d3b3ab81c87ef81934# v5.0.0
69+
with:
70+
images:${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
71+
72+
# Build and push Docker image with Buildx (don't push on PR)
73+
# https://github.com/docker/build-push-action
74+
-name:Build and push Docker image
75+
id:build-and-push
76+
uses:docker/build-push-action@0565240e2d4ab88bba5387d719585280857ece09# v5.0.0
77+
with:
78+
context:.
79+
push:${{ github.event_name != 'pull_request' }}
80+
tags:${{ steps.meta.outputs.tags }}
81+
labels:${{ steps.meta.outputs.labels }}
82+
cache-from:type=gha
83+
cache-to:type=gha,mode=max
84+
85+
# Sign the resulting Docker image digest except on PRs.
86+
# This will only write to the public Rekor transparency log when the Docker
87+
# repository is public to avoid leaking data. If you would like to publish
88+
# transparency data even for private images, pass --force to cosign below.
89+
# https://github.com/sigstore/cosign
90+
-name:Sign the published Docker image
91+
if:${{ github.event_name != 'pull_request' }}
92+
env:
93+
# https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-an-intermediate-environment-variable
94+
TAGS:${{ steps.meta.outputs.tags }}
95+
DIGEST:${{ steps.build-and-push.outputs.digest }}
96+
# This step uses the identity token to provision an ephemeral certificate
97+
# against the sigstore community Fulcio instance.
98+
run:echo "${TAGS}" | xargs -I {} cosign sign --yes {}@${DIGEST}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp