builds.sr.ht ci

This commit is contained in:
Carl Pearson
2025-03-30 18:53:47 -06:00
parent ad44e13463
commit 5c716395be
4 changed files with 116 additions and 0 deletions

33
.builds/14.yaml Normal file
View File

@@ -0,0 +1,33 @@
image: debian/bookworm
secrets:
- a19cbc4c-b6a1-414e-bf1c-1e06abc684eb
tasks:
- print-env: |
echo "$JOB_ID"
echo "$JOB_URL"
echo "$BUILD_SUBMITTER"
echo "$BUILD_REASON"
echo "$GIT_REF"
- setup-env: |
sudo timedatectl set-timezone America/Denver
echo "SLUG=ghcr.io/cwpearson/clang-format-14" >> ~/.buildenv
echo "DATE=$(date +"%Y%m%d_%H%M")" >> ~/.buildenv
- prerequisites: |
bash clang-format/.ci/debian_setup_docker.sh
- build: |
cd clang-format
docker build . --file clang-format-14.dockerfile --tag "$SLUG:$DATE" --tag "$SLUG:latest"
- deploy: |
if [ "$GIT_REF" != "refs/heads/master" ]; then exit 0; fi
set +x
cat ~/.ghcr_token | docker login ghcr.io -u cwpearson --password-stdin
set -x
docker push "$SLUG:latest"
docker push "$SLUG:$DATE"
triggers:
- action: email
condition: failure
to: Carl Pearson <srht@carlpearson.net>

33
.builds/16.yaml Normal file
View File

@@ -0,0 +1,33 @@
image: debian/bookworm
secrets:
- a19cbc4c-b6a1-414e-bf1c-1e06abc684eb
tasks:
- print-env: |
echo "$JOB_ID"
echo "$JOB_URL"
echo "$BUILD_SUBMITTER"
echo "$BUILD_REASON"
echo "$GIT_REF"
- setup-env: |
sudo timedatectl set-timezone America/Denver
echo "SLUG=ghcr.io/cwpearson/clang-format-16" >> ~/.buildenv
echo "DATE=$(date +"%Y%m%d_%H%M")" >> ~/.buildenv
- prerequisites: |
bash clang-format/.ci/debian_setup_docker.sh
- build: |
cd clang-format
docker build . --file clang-format-16.dockerfile --tag "$SLUG:$DATE" --tag "$SLUG:latest"
- deploy: |
if [ "$GIT_REF" != "refs/heads/master" ]; then exit 0; fi
set +x
cat ~/.ghcr_token | docker login ghcr.io -u cwpearson --password-stdin
set -x
docker push "$SLUG:latest"
docker push "$SLUG:$DATE"
triggers:
- action: email
condition: failure
to: Carl Pearson <srht@carlpearson.net>

33
.builds/8.yaml Normal file
View File

@@ -0,0 +1,33 @@
image: debian/bookworm
secrets:
- a19cbc4c-b6a1-414e-bf1c-1e06abc684eb
tasks:
- print-env: |
echo "$JOB_ID"
echo "$JOB_URL"
echo "$BUILD_SUBMITTER"
echo "$BUILD_REASON"
echo "$GIT_REF"
- setup-env: |
sudo timedatectl set-timezone America/Denver
echo "SLUG=ghcr.io/cwpearson/clang-format-8" >> ~/.buildenv
echo "DATE=$(date +"%Y%m%d_%H%M")" >> ~/.buildenv
- prerequisites: |
bash clang-format/.ci/debian_setup_docker.sh
- build: |
cd clang-format
docker build . --file clang-format-8.dockerfile --tag "$SLUG:$DATE" --tag "$SLUG:latest"
- deploy: |
if [ "$GIT_REF" != "refs/heads/master" ]; then exit 0; fi
set +x
cat ~/.ghcr_token | docker login ghcr.io -u cwpearson --password-stdin
set -x
docker push "$SLUG:latest"
docker push "$SLUG:$DATE"
triggers:
- action: email
condition: failure
to: Carl Pearson <srht@carlpearson.net>

View File

@@ -0,0 +1,17 @@
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
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" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo usermod -aG docker $(whoami)