Skip to content

3.4.10

3.4.10 #286

Workflow file for this run

{
"jobs": {
"build-3x0-focal-amd64": {
"name": "build-3x0-focal-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x0-focal-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x0-focal-arm64": {
"name": "build-3x0-focal-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x0-focal-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x0-jammy-amd64": {
"name": "build-3x0-jammy-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x0-jammy-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x0-jammy-arm64": {
"name": "build-3x0-jammy-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x0-jammy-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x1-focal-amd64": {
"name": "build-3x1-focal-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.1"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x1-focal-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x1-focal-arm64": {
"name": "build-3x1-focal-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.1"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x1-focal-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x1-jammy-amd64": {
"name": "build-3x1-jammy-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.1"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x1-jammy-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x1-jammy-arm64": {
"name": "build-3x1-jammy-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.1"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x1-jammy-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x2-bookworm-amd64": {
"name": "build-3x2-bookworm-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.2"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x2-bookworm-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x2-bookworm-arm64": {
"name": "build-3x2-bookworm-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.2"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x2-bookworm-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x2-focal-amd64": {
"name": "build-3x2-focal-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.2"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x2-focal-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x2-focal-arm64": {
"name": "build-3x2-focal-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.2"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x2-focal-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x2-jammy-amd64": {
"name": "build-3x2-jammy-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.2"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x2-jammy-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x2-jammy-arm64": {
"name": "build-3x2-jammy-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.2"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x2-jammy-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x2-noble-amd64": {
"name": "build-3x2-noble-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.2"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x2-noble-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x2-noble-arm64": {
"name": "build-3x2-noble-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.2"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x2-noble-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-bookworm-amd64": {
"name": "build-3x3-bookworm-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-bookworm-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-bookworm-arm64": {
"name": "build-3x3-bookworm-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-bookworm-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-focal-amd64": {
"name": "build-3x3-focal-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-focal-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-focal-arm64": {
"name": "build-3x3-focal-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-focal-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-jammy-amd64": {
"name": "build-3x3-jammy-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-jammy-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-jammy-arm64": {
"name": "build-3x3-jammy-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-jammy-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-noble-amd64": {
"name": "build-3x3-noble-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-noble-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-noble-arm64": {
"name": "build-3x3-noble-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-noble-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-trixie-amd64": {
"name": "build-3x3-trixie-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "trixie",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-trixie-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x3-trixie-arm64": {
"name": "build-3x3-trixie-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "trixie",
"SERIES_FILTER": "3.3"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x3-trixie-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-bookworm-amd64": {
"name": "build-3x4-bookworm-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-bookworm-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-bookworm-arm64": {
"name": "build-3x4-bookworm-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-bookworm-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-jammy-amd64": {
"name": "build-3x4-jammy-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-jammy-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-jammy-arm64": {
"name": "build-3x4-jammy-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-jammy-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-noble-amd64": {
"name": "build-3x4-noble-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-noble-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-noble-arm64": {
"name": "build-3x4-noble-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-noble-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-resolute-amd64": {
"name": "build-3x4-resolute-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "resolute",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-resolute-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-resolute-arm64": {
"name": "build-3x4-resolute-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "resolute",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-resolute-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-trixie-amd64": {
"name": "build-3x4-trixie-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "trixie",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-trixie-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-3x4-trixie-arm64": {
"name": "build-3x4-trixie-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "trixie",
"SERIES_FILTER": "3.4"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-3x4-trixie-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-bookworm-amd64": {
"name": "build-4x0-bookworm-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-bookworm-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-bookworm-arm64": {
"name": "build-4x0-bookworm-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-bookworm-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-jammy-amd64": {
"name": "build-4x0-jammy-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-jammy-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-jammy-arm64": {
"name": "build-4x0-jammy-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "jammy",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-jammy-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-noble-amd64": {
"name": "build-4x0-noble-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "noble",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-noble-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-noble-arm64": {
"name": "build-4x0-noble-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "noble",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-noble-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-resolute-amd64": {
"name": "build-4x0-resolute-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "resolute",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-resolute-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-resolute-arm64": {
"name": "build-4x0-resolute-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "resolute",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-resolute-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-trixie-amd64": {
"name": "build-4x0-trixie-amd64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "amd64",
"DIST_FILTER": "trixie",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-trixie-amd64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"build-4x0-trixie-arm64": {
"name": "build-4x0-trixie-arm64",
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-24.04-arm",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"env": {
"ARCH_FILTER": "arm64",
"DIST_FILTER": "trixie",
"SERIES_FILTER": "4.0"
},
"run": "ruby build.rb --pull --push"
},
{
"uses": "actions/upload-artifact@v4",
"with": {
"name": "build-4x0-trixie-arm64-artifacts",
"path": "tmp/built_images.json",
"retention-days": 1
}
}
]
},
"cleanup": {
"name": "cleanup",
"needs": [
"manifest-main-3x0-focal",
"manifest-main-3x0-jammy",
"manifest-main-3x1-focal",
"manifest-main-3x1-jammy",
"manifest-main-3x2-focal",
"manifest-main-3x2-jammy",
"manifest-main-3x2-noble",
"manifest-main-3x2-bookworm",
"manifest-main-3x3-focal",
"manifest-main-3x3-jammy",
"manifest-main-3x3-noble",
"manifest-main-3x3-bookworm",
"manifest-main-3x3-trixie",
"manifest-main-3x4-jammy",
"manifest-main-3x4-noble",
"manifest-main-3x4-resolute",
"manifest-main-3x4-bookworm",
"manifest-main-3x4-trixie",
"manifest-main-4x0-jammy",
"manifest-main-4x0-noble",
"manifest-main-4x0-resolute",
"manifest-main-4x0-bookworm",
"manifest-main-4x0-trixie",
"manifest-main-latest"
],
"permissions": {
"contents": "read",
"id-token": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"run": "curl -Ssfo cleanup.rb https://raw.githubusercontent.com/sorah/config/1a4323466aa3c554dd53b70a17fe36fb4c8c87fd/bin/sorah-aws-ecr-public-cleanup"
},
{
"run": "gem i aws-sdk-ecrpublic"
},
{
"run": "ruby cleanup.rb ruby"
}
]
},
"manifest-hub-3x0-focal": {
"name": "manifest-hub-3x0-focal",
"needs": [
"build-3x0-focal-amd64",
"build-3x0-focal-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x0-focal-amd64-artifacts",
"path": "tmp/build-3x0-focal-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x0-focal-arm64-artifacts",
"path": "tmp/build-3x0-focal-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "focal",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x0-jammy": {
"name": "manifest-hub-3x0-jammy",
"needs": [
"build-3x0-jammy-amd64",
"build-3x0-jammy-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x0-jammy-amd64-artifacts",
"path": "tmp/build-3x0-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x0-jammy-arm64-artifacts",
"path": "tmp/build-3x0-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "jammy",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x1-focal": {
"name": "manifest-hub-3x1-focal",
"needs": [
"build-3x1-focal-amd64",
"build-3x1-focal-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x1-focal-amd64-artifacts",
"path": "tmp/build-3x1-focal-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x1-focal-arm64-artifacts",
"path": "tmp/build-3x1-focal-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "focal",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.1"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x1-jammy": {
"name": "manifest-hub-3x1-jammy",
"needs": [
"build-3x1-jammy-amd64",
"build-3x1-jammy-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x1-jammy-amd64-artifacts",
"path": "tmp/build-3x1-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x1-jammy-arm64-artifacts",
"path": "tmp/build-3x1-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "jammy",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.1"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x2-bookworm": {
"name": "manifest-hub-3x2-bookworm",
"needs": [
"build-3x2-bookworm-amd64",
"build-3x2-bookworm-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-bookworm-amd64-artifacts",
"path": "tmp/build-3x2-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-bookworm-arm64-artifacts",
"path": "tmp/build-3x2-bookworm-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "bookworm",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.2"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x2-focal": {
"name": "manifest-hub-3x2-focal",
"needs": [
"build-3x2-focal-amd64",
"build-3x2-focal-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-focal-amd64-artifacts",
"path": "tmp/build-3x2-focal-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-focal-arm64-artifacts",
"path": "tmp/build-3x2-focal-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "focal",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.2"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x2-jammy": {
"name": "manifest-hub-3x2-jammy",
"needs": [
"build-3x2-jammy-amd64",
"build-3x2-jammy-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-jammy-amd64-artifacts",
"path": "tmp/build-3x2-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-jammy-arm64-artifacts",
"path": "tmp/build-3x2-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "jammy",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.2"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x2-noble": {
"name": "manifest-hub-3x2-noble",
"needs": [
"build-3x2-noble-amd64",
"build-3x2-noble-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-noble-amd64-artifacts",
"path": "tmp/build-3x2-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-noble-arm64-artifacts",
"path": "tmp/build-3x2-noble-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "noble",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.2"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x3-bookworm": {
"name": "manifest-hub-3x3-bookworm",
"needs": [
"build-3x3-bookworm-amd64",
"build-3x3-bookworm-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-bookworm-amd64-artifacts",
"path": "tmp/build-3x3-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-bookworm-arm64-artifacts",
"path": "tmp/build-3x3-bookworm-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "bookworm",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x3-focal": {
"name": "manifest-hub-3x3-focal",
"needs": [
"build-3x3-focal-amd64",
"build-3x3-focal-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-focal-amd64-artifacts",
"path": "tmp/build-3x3-focal-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-focal-arm64-artifacts",
"path": "tmp/build-3x3-focal-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "focal",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x3-jammy": {
"name": "manifest-hub-3x3-jammy",
"needs": [
"build-3x3-jammy-amd64",
"build-3x3-jammy-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-jammy-amd64-artifacts",
"path": "tmp/build-3x3-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-jammy-arm64-artifacts",
"path": "tmp/build-3x3-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "jammy",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x3-noble": {
"name": "manifest-hub-3x3-noble",
"needs": [
"build-3x3-noble-amd64",
"build-3x3-noble-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-noble-amd64-artifacts",
"path": "tmp/build-3x3-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-noble-arm64-artifacts",
"path": "tmp/build-3x3-noble-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "noble",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x3-trixie": {
"name": "manifest-hub-3x3-trixie",
"needs": [
"build-3x3-trixie-amd64",
"build-3x3-trixie-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-trixie-amd64-artifacts",
"path": "tmp/build-3x3-trixie-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-trixie-arm64-artifacts",
"path": "tmp/build-3x3-trixie-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "trixie",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x4-bookworm": {
"name": "manifest-hub-3x4-bookworm",
"needs": [
"build-3x4-bookworm-amd64",
"build-3x4-bookworm-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-bookworm-amd64-artifacts",
"path": "tmp/build-3x4-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-bookworm-arm64-artifacts",
"path": "tmp/build-3x4-bookworm-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "bookworm",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x4-jammy": {
"name": "manifest-hub-3x4-jammy",
"needs": [
"build-3x4-jammy-amd64",
"build-3x4-jammy-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-jammy-amd64-artifacts",
"path": "tmp/build-3x4-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-jammy-arm64-artifacts",
"path": "tmp/build-3x4-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "jammy",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x4-noble": {
"name": "manifest-hub-3x4-noble",
"needs": [
"build-3x4-noble-amd64",
"build-3x4-noble-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-noble-amd64-artifacts",
"path": "tmp/build-3x4-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-noble-arm64-artifacts",
"path": "tmp/build-3x4-noble-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "noble",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x4-resolute": {
"name": "manifest-hub-3x4-resolute",
"needs": [
"build-3x4-resolute-amd64",
"build-3x4-resolute-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-resolute-amd64-artifacts",
"path": "tmp/build-3x4-resolute-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-resolute-arm64-artifacts",
"path": "tmp/build-3x4-resolute-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "resolute",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-3x4-trixie": {
"name": "manifest-hub-3x4-trixie",
"needs": [
"build-3x4-trixie-amd64",
"build-3x4-trixie-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-trixie-amd64-artifacts",
"path": "tmp/build-3x4-trixie-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-trixie-arm64-artifacts",
"path": "tmp/build-3x4-trixie-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "trixie",
"DOCKERHUB": "1",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-4x0-bookworm": {
"name": "manifest-hub-4x0-bookworm",
"needs": [
"build-4x0-bookworm-amd64",
"build-4x0-bookworm-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-bookworm-amd64-artifacts",
"path": "tmp/build-4x0-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-bookworm-arm64-artifacts",
"path": "tmp/build-4x0-bookworm-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "bookworm",
"DOCKERHUB": "1",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-4x0-jammy": {
"name": "manifest-hub-4x0-jammy",
"needs": [
"build-4x0-jammy-amd64",
"build-4x0-jammy-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-jammy-amd64-artifacts",
"path": "tmp/build-4x0-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-jammy-arm64-artifacts",
"path": "tmp/build-4x0-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "jammy",
"DOCKERHUB": "1",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-4x0-noble": {
"name": "manifest-hub-4x0-noble",
"needs": [
"build-4x0-noble-amd64",
"build-4x0-noble-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-noble-amd64-artifacts",
"path": "tmp/build-4x0-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-noble-arm64-artifacts",
"path": "tmp/build-4x0-noble-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "noble",
"DOCKERHUB": "1",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-4x0-resolute": {
"name": "manifest-hub-4x0-resolute",
"needs": [
"build-4x0-resolute-amd64",
"build-4x0-resolute-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-resolute-amd64-artifacts",
"path": "tmp/build-4x0-resolute-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-resolute-arm64-artifacts",
"path": "tmp/build-4x0-resolute-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "resolute",
"DOCKERHUB": "1",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-4x0-trixie": {
"name": "manifest-hub-4x0-trixie",
"needs": [
"build-4x0-trixie-amd64",
"build-4x0-trixie-arm64",
"cleanup"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-trixie-amd64-artifacts",
"path": "tmp/build-4x0-trixie-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-trixie-arm64-artifacts",
"path": "tmp/build-4x0-trixie-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DIST_FILTER": "trixie",
"DOCKERHUB": "1",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-hub-latest": {
"name": "manifest-hub-latest",
"needs": [
"build-4x0-jammy-amd64",
"build-4x0-jammy-arm64",
"build-4x0-noble-amd64",
"build-4x0-noble-arm64",
"build-4x0-resolute-amd64",
"build-4x0-resolute-arm64",
"build-4x0-bookworm-amd64",
"build-4x0-bookworm-arm64",
"build-4x0-trixie-amd64",
"build-4x0-trixie-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-jammy-amd64-artifacts",
"path": "tmp/build-4x0-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-jammy-arm64-artifacts",
"path": "tmp/build-4x0-jammy-arm64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-noble-amd64-artifacts",
"path": "tmp/build-4x0-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-noble-arm64-artifacts",
"path": "tmp/build-4x0-noble-arm64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-resolute-amd64-artifacts",
"path": "tmp/build-4x0-resolute-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-resolute-arm64-artifacts",
"path": "tmp/build-4x0-resolute-arm64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-bookworm-amd64-artifacts",
"path": "tmp/build-4x0-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-bookworm-arm64-artifacts",
"path": "tmp/build-4x0-bookworm-arm64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-trixie-amd64-artifacts",
"path": "tmp/build-4x0-trixie-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-trixie-arm64-artifacts",
"path": "tmp/build-4x0-trixie-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": true,
"env": {
"DOCKERHUB": "1"
},
"run": "ruby manifest.rb --pull --latest"
}
]
},
"manifest-main-3x0-focal": {
"name": "manifest-main-3x0-focal",
"needs": [
"build-3x0-focal-amd64",
"build-3x0-focal-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x0-focal-amd64-artifacts",
"path": "tmp/build-3x0-focal-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x0-focal-arm64-artifacts",
"path": "tmp/build-3x0-focal-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x0-jammy": {
"name": "manifest-main-3x0-jammy",
"needs": [
"build-3x0-jammy-amd64",
"build-3x0-jammy-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x0-jammy-amd64-artifacts",
"path": "tmp/build-3x0-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x0-jammy-arm64-artifacts",
"path": "tmp/build-3x0-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x1-focal": {
"name": "manifest-main-3x1-focal",
"needs": [
"build-3x1-focal-amd64",
"build-3x1-focal-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x1-focal-amd64-artifacts",
"path": "tmp/build-3x1-focal-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x1-focal-arm64-artifacts",
"path": "tmp/build-3x1-focal-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.1"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x1-jammy": {
"name": "manifest-main-3x1-jammy",
"needs": [
"build-3x1-jammy-amd64",
"build-3x1-jammy-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x1-jammy-amd64-artifacts",
"path": "tmp/build-3x1-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x1-jammy-arm64-artifacts",
"path": "tmp/build-3x1-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.1"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x2-bookworm": {
"name": "manifest-main-3x2-bookworm",
"needs": [
"build-3x2-bookworm-amd64",
"build-3x2-bookworm-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-bookworm-amd64-artifacts",
"path": "tmp/build-3x2-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-bookworm-arm64-artifacts",
"path": "tmp/build-3x2-bookworm-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.2"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x2-focal": {
"name": "manifest-main-3x2-focal",
"needs": [
"build-3x2-focal-amd64",
"build-3x2-focal-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-focal-amd64-artifacts",
"path": "tmp/build-3x2-focal-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-focal-arm64-artifacts",
"path": "tmp/build-3x2-focal-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.2"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x2-jammy": {
"name": "manifest-main-3x2-jammy",
"needs": [
"build-3x2-jammy-amd64",
"build-3x2-jammy-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-jammy-amd64-artifacts",
"path": "tmp/build-3x2-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-jammy-arm64-artifacts",
"path": "tmp/build-3x2-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.2"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x2-noble": {
"name": "manifest-main-3x2-noble",
"needs": [
"build-3x2-noble-amd64",
"build-3x2-noble-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-noble-amd64-artifacts",
"path": "tmp/build-3x2-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x2-noble-arm64-artifacts",
"path": "tmp/build-3x2-noble-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.2"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x3-bookworm": {
"name": "manifest-main-3x3-bookworm",
"needs": [
"build-3x3-bookworm-amd64",
"build-3x3-bookworm-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-bookworm-amd64-artifacts",
"path": "tmp/build-3x3-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-bookworm-arm64-artifacts",
"path": "tmp/build-3x3-bookworm-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x3-focal": {
"name": "manifest-main-3x3-focal",
"needs": [
"build-3x3-focal-amd64",
"build-3x3-focal-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-focal-amd64-artifacts",
"path": "tmp/build-3x3-focal-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-focal-arm64-artifacts",
"path": "tmp/build-3x3-focal-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "focal",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x3-jammy": {
"name": "manifest-main-3x3-jammy",
"needs": [
"build-3x3-jammy-amd64",
"build-3x3-jammy-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-jammy-amd64-artifacts",
"path": "tmp/build-3x3-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-jammy-arm64-artifacts",
"path": "tmp/build-3x3-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x3-noble": {
"name": "manifest-main-3x3-noble",
"needs": [
"build-3x3-noble-amd64",
"build-3x3-noble-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-noble-amd64-artifacts",
"path": "tmp/build-3x3-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-noble-arm64-artifacts",
"path": "tmp/build-3x3-noble-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x3-trixie": {
"name": "manifest-main-3x3-trixie",
"needs": [
"build-3x3-trixie-amd64",
"build-3x3-trixie-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-trixie-amd64-artifacts",
"path": "tmp/build-3x3-trixie-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x3-trixie-arm64-artifacts",
"path": "tmp/build-3x3-trixie-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "trixie",
"SERIES_FILTER": "3.3"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x4-bookworm": {
"name": "manifest-main-3x4-bookworm",
"needs": [
"build-3x4-bookworm-amd64",
"build-3x4-bookworm-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-bookworm-amd64-artifacts",
"path": "tmp/build-3x4-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-bookworm-arm64-artifacts",
"path": "tmp/build-3x4-bookworm-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x4-jammy": {
"name": "manifest-main-3x4-jammy",
"needs": [
"build-3x4-jammy-amd64",
"build-3x4-jammy-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-jammy-amd64-artifacts",
"path": "tmp/build-3x4-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-jammy-arm64-artifacts",
"path": "tmp/build-3x4-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "jammy",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x4-noble": {
"name": "manifest-main-3x4-noble",
"needs": [
"build-3x4-noble-amd64",
"build-3x4-noble-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-noble-amd64-artifacts",
"path": "tmp/build-3x4-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-noble-arm64-artifacts",
"path": "tmp/build-3x4-noble-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "noble",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x4-resolute": {
"name": "manifest-main-3x4-resolute",
"needs": [
"build-3x4-resolute-amd64",
"build-3x4-resolute-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-resolute-amd64-artifacts",
"path": "tmp/build-3x4-resolute-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-resolute-arm64-artifacts",
"path": "tmp/build-3x4-resolute-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "resolute",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-3x4-trixie": {
"name": "manifest-main-3x4-trixie",
"needs": [
"build-3x4-trixie-amd64",
"build-3x4-trixie-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-trixie-amd64-artifacts",
"path": "tmp/build-3x4-trixie-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-3x4-trixie-arm64-artifacts",
"path": "tmp/build-3x4-trixie-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "trixie",
"SERIES_FILTER": "3.4"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-4x0-bookworm": {
"name": "manifest-main-4x0-bookworm",
"needs": [
"build-4x0-bookworm-amd64",
"build-4x0-bookworm-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-bookworm-amd64-artifacts",
"path": "tmp/build-4x0-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-bookworm-arm64-artifacts",
"path": "tmp/build-4x0-bookworm-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "bookworm",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-4x0-jammy": {
"name": "manifest-main-4x0-jammy",
"needs": [
"build-4x0-jammy-amd64",
"build-4x0-jammy-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-jammy-amd64-artifacts",
"path": "tmp/build-4x0-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-jammy-arm64-artifacts",
"path": "tmp/build-4x0-jammy-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "jammy",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-4x0-noble": {
"name": "manifest-main-4x0-noble",
"needs": [
"build-4x0-noble-amd64",
"build-4x0-noble-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-noble-amd64-artifacts",
"path": "tmp/build-4x0-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-noble-arm64-artifacts",
"path": "tmp/build-4x0-noble-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "noble",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-4x0-resolute": {
"name": "manifest-main-4x0-resolute",
"needs": [
"build-4x0-resolute-amd64",
"build-4x0-resolute-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-resolute-amd64-artifacts",
"path": "tmp/build-4x0-resolute-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-resolute-arm64-artifacts",
"path": "tmp/build-4x0-resolute-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "resolute",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-4x0-trixie": {
"name": "manifest-main-4x0-trixie",
"needs": [
"build-4x0-trixie-amd64",
"build-4x0-trixie-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-trixie-amd64-artifacts",
"path": "tmp/build-4x0-trixie-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-trixie-arm64-artifacts",
"path": "tmp/build-4x0-trixie-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": {
"DIST_FILTER": "trixie",
"SERIES_FILTER": "4.0"
},
"run": "ruby manifest.rb --pull --subtag"
}
]
},
"manifest-main-latest": {
"name": "manifest-main-latest",
"needs": [
"build-4x0-jammy-amd64",
"build-4x0-jammy-arm64",
"build-4x0-noble-amd64",
"build-4x0-noble-arm64",
"build-4x0-resolute-amd64",
"build-4x0-resolute-arm64",
"build-4x0-bookworm-amd64",
"build-4x0-bookworm-arm64",
"build-4x0-trixie-amd64",
"build-4x0-trixie-arm64"
],
"permissions": {
"contents": "read",
"id-token": "write",
"packages": "write"
},
"runs-on": "ubuntu-latest",
"steps": [
{
"run": "mkdir -p ~/.docker\\n\necho '{\"experimental\": \"enabled\"}' > ~/.docker/config.json\n"
},
{
"uses": "ruby/setup-ruby@v1",
"with": {
"ruby-version": "3.3"
}
},
{
"name": "login-dockerhub",
"run": "echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u sorah --password-stdin"
},
{
"name": "login-ghcr",
"run": "echo \"${{ secrets.GITHUB_TOKEN }}\" | docker login ghcr.io -u ${{ github.actor }} --password-stdin"
},
{
"uses": "aws-actions/configure-aws-credentials@v1",
"with": {
"aws-region": "us-east-1",
"role-duration-seconds": 14400,
"role-skip-session-tagging": "true",
"role-to-assume": "${{ secrets.AWS_ROLE_TO_ASSUME }}"
}
},
{
"name": "Login to ECR Public",
"run": "aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws"
},
{
"uses": "actions/checkout@v3"
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-jammy-amd64-artifacts",
"path": "tmp/build-4x0-jammy-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-jammy-arm64-artifacts",
"path": "tmp/build-4x0-jammy-arm64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-noble-amd64-artifacts",
"path": "tmp/build-4x0-noble-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-noble-arm64-artifacts",
"path": "tmp/build-4x0-noble-arm64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-resolute-amd64-artifacts",
"path": "tmp/build-4x0-resolute-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-resolute-arm64-artifacts",
"path": "tmp/build-4x0-resolute-arm64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-bookworm-amd64-artifacts",
"path": "tmp/build-4x0-bookworm-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-bookworm-arm64-artifacts",
"path": "tmp/build-4x0-bookworm-arm64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-trixie-amd64-artifacts",
"path": "tmp/build-4x0-trixie-amd64-artifacts"
}
},
{
"uses": "actions/download-artifact@v4",
"with": {
"name": "build-4x0-trixie-arm64-artifacts",
"path": "tmp/build-4x0-trixie-arm64-artifacts"
}
},
{
"run": "find tmp"
},
{
"run": "ruby -rjson -e \"puts JSON.generate(ARGV.map { JSON.parse(File.read(_1)) }.inject(&:+))\" tmp/*-artifacts/built_images.json > tmp/built_images.json"
},
{
"continue-on-error": false,
"env": { },
"run": "ruby manifest.rb --pull --latest"
}
]
}
},
"name": "docker-build",
"on": {
"push": {
"branches": [
"master"
]
},
"schedule": [
{
"cron": "18 7 2,12,22 * *"
}
]
}
}