mirror of
https://github.com/AsgardEternal/SquadDocker.git
synced 2024-09-28 11:44:22 -05:00
96 lines
2.6 KiB
YAML
96 lines
2.6 KiB
YAML
name: Docker Image CI
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: '05 18 * * *'
|
|
push:
|
|
branches:
|
|
- Development
|
|
|
|
jobs:
|
|
|
|
log-reg:
|
|
runs-on: self-hosted
|
|
steps:
|
|
- name: Registry Login
|
|
uses: docker/login-action@v2
|
|
with:
|
|
registry: "${{ vars.DOCKER_REGISTRY_URL }}"
|
|
username: "${{ secrets.DOCKER_REGISTRY_USER }}"
|
|
password: "${{ secrets.DOCKER_REGISTRY_PASSWORD }}"
|
|
logout: false
|
|
|
|
base-squad:
|
|
runs-on: self-hosted
|
|
needs: log-reg
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
|
|
- name: set up Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
|
|
- name: Build and Push
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: .
|
|
file: ./Dockerfile
|
|
push: true
|
|
tags: "${{ vars.DOCKER_REGISTRY_URL }}/squad:latest"
|
|
cache-to: type=inline
|
|
|
|
build_matrix:
|
|
strategy:
|
|
max-parallel: 2
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- name-id: mee-french-latest
|
|
mods: "1959152751,2618610732"
|
|
- name-id: galac-latest
|
|
mods: "2428425228"
|
|
- name-id: tac-latest
|
|
mods: "2914624834,2891780963,2924330335,2923657563,2923966298,2960147679,2960146775,2972409386,2957886095"
|
|
- name-id: tac-bots-latest
|
|
mods: "2891780963"
|
|
runs-on: self-hosted
|
|
needs: base-squad
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Registry Login
|
|
uses: docker/login-action@v2
|
|
with:
|
|
registry: "${{ vars.DOCKER_REGISTRY_URL }}"
|
|
username: "${{ secrets.DOCKER_REGISTRY_USER }}"
|
|
password: "${{ secrets.DOCKER_REGISTRY_PASSWORD }}"
|
|
logout: false
|
|
|
|
- name: Setup Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
|
|
- name: Build Image
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
builder: ${{ steps.buildx.outputs.name }}
|
|
context: .
|
|
file: ./Dockerfile
|
|
build-args: mods=${{ matrix.mods }}
|
|
push: true
|
|
tags: "${{ vars.DOCKER_REGISTRY_URL }}/squad:${{ matrix.name-id }}"
|
|
cache-from: type=registry,ref=${{ vars.DOCKER_REGISTRY_URL }}/squad:latest
|
|
cache-to: type=inline
|
|
|
|
logout-reg:
|
|
runs-on: self-hosted
|
|
needs: build_matrix
|
|
steps:
|
|
- name: Registry Login
|
|
uses: docker/login-action@v2
|
|
with:
|
|
registry: "${{ vars.DOCKER_REGISTRY_URL }}"
|
|
username: "${{ secrets.DOCKER_REGISTRY_USER }}"
|
|
password: "${{ secrets.DOCKER_REGISTRY_PASSWORD }}"
|