45 lines
1.6 KiB
YAML
45 lines
1.6 KiB
YAML
name: "build and push"
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- 'main'
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: docker
|
|
steps:
|
|
- name: setup docker repo
|
|
run: |
|
|
apt update
|
|
apt install ca-certificates curl
|
|
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
|
|
- name: install dependencies
|
|
run: |
|
|
apt update -y
|
|
apt install docker-ce docker-ce-cli containerd.io \
|
|
docker-buildx-plugin docker-compose-plugin -y
|
|
- name: Checkout the repo
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: true
|
|
- name: Login and setup builder
|
|
run: |
|
|
echo "${{ secrets.DOCKER_TOKEN }}" | docker login hephaestus.sunnypup.io \
|
|
--username affine --password-stdin
|
|
docker context create tls-environment
|
|
docker buildx create \
|
|
--name container-builder \
|
|
--driver docker-container \
|
|
--bootstrap --use tls-environment
|
|
- name: Build and push pathfinder
|
|
run: |
|
|
docker compose build --push pathfinder
|
|
- name: Build and push pf-websocket
|
|
run: |
|
|
docker compose build --push pf-websocket
|