60 lines
2.1 KiB
YAML
60 lines
2.1 KiB
YAML
|
name: Build VMCli with PowerShell
|
||
|
on: [push]
|
||
|
|
||
|
jobs:
|
||
|
Build-VMCli:
|
||
|
runs-on: ubuntu-latest
|
||
|
ContainerNetworkMode: webservices
|
||
|
steps:
|
||
|
- name: Install docker
|
||
|
run: |
|
||
|
apt update
|
||
|
apt -y install curl ca-certificates
|
||
|
install -m 0755 -d /etc/apt/keyrings
|
||
|
curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
|
||
|
chmod a+r /etc/apt/keyrings/docker.asc
|
||
|
echo \
|
||
|
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
|
||
|
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
|
||
|
tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||
|
apt update
|
||
|
apt -y install docker-ce-cli docker-buildx-plugin docker-compose-plugin
|
||
|
|
||
|
- name: Clone Repo
|
||
|
uses: actions/checkout@v3
|
||
|
|
||
|
- name: Set up QEMU
|
||
|
uses: docker/setup-qemu-action@v3
|
||
|
|
||
|
- name: Set up Docker Buildx
|
||
|
uses: docker/setup-buildx-action@v3
|
||
|
|
||
|
- name: Cache Docker layers
|
||
|
uses: actions/cache@v3
|
||
|
with:
|
||
|
path: /tmp/.buildx-cache
|
||
|
key: ${{ runner.os }}-buildx-${{ github.sha }}
|
||
|
restore-keys: |
|
||
|
${{ runner.os }}-${{ runner.arch }}-buildx-vmcli
|
||
|
|
||
|
- name: Login to Docker Hub
|
||
|
uses: docker/login-action@v3
|
||
|
with:
|
||
|
# Someday.... https://github.com/go-gitea/gitea/issues/23642
|
||
|
# username: ${{ gitea.repository_owner }}
|
||
|
# password: ${{ secrets.GITEA_TOKEN}}
|
||
|
username: ${{ vars.PAT_USER }}
|
||
|
password: ${{ secrets.PAT_TOKEN}}
|
||
|
registry: git.leonardoamaral.com.br
|
||
|
|
||
|
- name: Build and push
|
||
|
run: |
|
||
|
docker buildx build --cache-from type=local,src=/tmp/.buildx-cache --cache-to type=local,dest=/tmp/.buildx-cache-new,mode=max --load --tag git.leonardoamaral.com.br/leonardo/woof:latest --file Containerfile .
|
||
|
docker push git.leonardoamaral.com.br/leonardo/woof:latest
|
||
|
|
||
|
- name: Move cache
|
||
|
run: |
|
||
|
rm -rf /tmp/.buildx-cache
|
||
|
mv /tmp/.buildx-cache-new /tmp/.buildx-cache
|
||
|
|