mirror of
https://github.com/docker/login-action.git
synced 2024-12-12 22:55:52 +08:00
adb236cb13
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
289 lines
6.6 KiB
YAML
289 lines
6.6 KiB
YAML
name: ci
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: '0 10 * * *'
|
|
push:
|
|
branches:
|
|
- 'master'
|
|
- 'releases/v*'
|
|
|
|
jobs:
|
|
stop-docker:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Stop docker
|
|
run: |
|
|
sudo systemctl stop docker
|
|
-
|
|
name: Login to GitHub Container Registry
|
|
uses: ./
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
logout:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
logout:
|
|
- false
|
|
- true
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to GitHub Container Registry
|
|
uses: ./
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
logout: ${{ matrix.logout }}
|
|
|
|
dind:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
DOCKER_CONFIG: $HOME/.docker
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to GitHub Container Registry
|
|
uses: ./
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.GHCR_USERNAME }}
|
|
password: ${{ secrets.GHCR_PAT }}
|
|
-
|
|
name: DinD
|
|
uses: docker://docker
|
|
with:
|
|
entrypoint: docker
|
|
args: pull ghcr.io/docker-ghactiontest/test
|
|
-
|
|
name: Pull private image
|
|
run: |
|
|
docker image prune -a -f >/dev/null 2>&1
|
|
docker pull ghcr.io/docker-ghactiontest/test
|
|
|
|
acr:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to ACR
|
|
uses: ./
|
|
with:
|
|
registry: ${{ secrets.AZURE_REGISTRY_NAME }}.azurecr.io
|
|
username: ${{ secrets.AZURE_CLIENT_ID }}
|
|
password: ${{ secrets.AZURE_CLIENT_SECRET }}
|
|
|
|
dockerhub:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to Docker Hub
|
|
uses: ./
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
|
|
ecr:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to ECR
|
|
uses: ./
|
|
with:
|
|
registry: ${{ secrets.AWS_ACCOUNT_NUMBER }}.dkr.ecr.us-east-1.amazonaws.com
|
|
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
|
|
ecr-aws-creds:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Configure AWS Credentials
|
|
uses: aws-actions/configure-aws-credentials@v4
|
|
with:
|
|
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
aws-region: us-east-1
|
|
-
|
|
name: Login to ECR
|
|
uses: ./
|
|
with:
|
|
registry: ${{ secrets.AWS_ACCOUNT_NUMBER }}.dkr.ecr.us-east-1.amazonaws.com
|
|
|
|
ecr-public:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to Public ECR
|
|
continue-on-error: ${{ matrix.os == 'windows-latest' }}
|
|
uses: ./
|
|
with:
|
|
registry: public.ecr.aws
|
|
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
env:
|
|
AWS_REGION: us-east-1
|
|
|
|
ecr-public-aws-creds:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Configure AWS Credentials
|
|
uses: aws-actions/configure-aws-credentials@v4
|
|
with:
|
|
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
aws-region: us-east-1
|
|
-
|
|
name: Login to Public ECR
|
|
continue-on-error: ${{ matrix.os == 'windows-latest' }}
|
|
uses: ./
|
|
with:
|
|
registry: public.ecr.aws
|
|
|
|
github-container:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to GitHub Container Registry
|
|
uses: ./
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
gitlab:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to GitLab
|
|
uses: ./
|
|
with:
|
|
registry: registry.gitlab.com
|
|
username: ${{ secrets.GITLAB_USERNAME }}
|
|
password: ${{ secrets.GITLAB_TOKEN }}
|
|
|
|
google-artifact:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to Google Artifact Registry
|
|
uses: ./
|
|
with:
|
|
registry: ${{ secrets.GAR_LOCATION }}-docker.pkg.dev
|
|
username: _json_key
|
|
password: ${{ secrets.GAR_JSON_KEY }}
|
|
|
|
google-container:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
steps:
|
|
-
|
|
name: Checkout
|
|
uses: actions/checkout@v4
|
|
-
|
|
name: Login to Google Container Registry
|
|
uses: ./
|
|
with:
|
|
registry: gcr.io
|
|
username: _json_key
|
|
password: ${{ secrets.GCR_JSON_KEY }}
|