Introducing automated builds for this image. (Bump) #1

Merged
pfm merged 6 commits from add-automated-builds into main 2024-03-24 15:57:46 +00:00
8 changed files with 126 additions and 7 deletions

View file

@ -0,0 +1,29 @@
on:
pull_request:
types: [opened, synchronize, reopened]
defaults:
run:
shell: bash
jobs:
ci_image_build:
runs-on: docker
container:
image: registry.garrity.co:8443/gs/ci-containers:latest
name: 'Build and Test CI Image'
env:
IMAGE_TAG: registry.garrity.co:8443/gs/ci-scala:pre-release
steps:
- uses: actions/checkout@v4
name: 'Checkout Repository'
with:
fetch-depth: 0
- name: 'Pre-Commit'
run: |
pre-commit install
pre-commit run --all-files
- name: 'Build and Push Pre-Release'
run: |
podman build --tag "$IMAGE_TAG" .
podman push "$IMAGE_TAG"

View file

@ -0,0 +1,30 @@
on:
push:
branches:
- main
defaults:
run:
shell: bash
jobs:
ci_image_release:
runs-on: docker
container:
image: registry.garrity.co:8443/gs/ci-containers:latest
name: 'Build and Release CI Image'
env:
IMAGE_TAG: registry.garrity.co:8443/gs/ci-scala:latest
steps:
- uses: actions/checkout@v4
name: 'Checkout Repository'
with:
fetch-depth: 0
- name: 'Pre-Commit'
run: |
pre-commit install
pre-commit run --all-files
- name: 'Build and Push Pre-Release'
run: |
podman build --tag "$IMAGE_TAG" .
podman push "$IMAGE_TAG"

13
.pre-commit-config.yaml Normal file
View file

@ -0,0 +1,13 @@
---
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
hooks:
- id: end-of-file-fixer
- id: trailing-whitespace
- id: fix-byte-order-marker
- id: mixed-line-ending
args: ['--fix=lf']
description: Enforces using only 'LF' line endings.
- id: trailing-whitespace
- id: check-yaml

View file

@ -9,9 +9,13 @@ ENV SBT_VERSION ${SBT_VERSION:-1.9.9}
# python3 is required for pre-commit
# docker is required for certain DinD cases
RUN apt-get update
RUN apt-get install -y curl git docker python3 python3-pip nodejs
RUN apt-get install -y curl git docker python3 python3-pip nodejs ca-certificates
RUN pip3 install pre-commit
# Ensure that this image recognizes the self-signed registry certificate.
COPY registry.garrity.co.crt /usr/local/share/ca-certificates
RUN update-ca-certificates
# Create the user - builds do not run as root.
RUN groupadd -g 1111 -r builder
RUN useradd -u 1111 -m -g 1111 -r -s /bin/bash builder

View file

@ -1,4 +1,8 @@
# ci-scala
Produces a container image suitable for Scala builds within the Garrity Software
ecosystem.
ecosystem. This image is not useable outside of the GS build environment.
```
registry.garrity.co:8443/gs/ci-scala:latest
```

View file

@ -1,4 +1,6 @@
#!/bin/sh
podman build --tag registry.garrity.co:8443/gs/ci-scala:latest .
podman push registry.garrity.co:8443/gs/ci-scala:latest
readonly image_tag="registry.garrity.co:8443/gs/ci-scala:latest"
podman build --tag "$image_tag" .
podman push "$image_tag"

View file

@ -1,4 +1,6 @@
#!/bin/sh
#!/bin/bash
podman build --tag registry.garrity.co:8443/gs/ci-scala:latest .
podman run --rm -it --entrypoint bash registry.garrity.co:8443/gs/ci-scala:latest
readonly image_tag="registry.garrity.co:8443/gs/ci-scala:latest"
podman build --tag "$image_tag" .
podman run --rm -it --entrypoint bash "$image_tag"

35
registry.garrity.co.crt Normal file
View file

@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
MIIGITCCBAmgAwIBAgIUR4lgvhfqxhyfD/gwLpA4U/V26UMwDQYJKoZIhvcNAQEL
BQAwgY8xCzAJBgNVBAYTAlVTMRIwEAYDVQQIDAlNaW5uZXNvdGExFDASBgNVBAcM
C0Jsb29taW5ndG9uMRkwFwYDVQQKDBBHYXJyaXR5IFNvZnR3YXJlMRwwGgYDVQQD
DBNyZWdpc3RyeS5nYXJyaXR5LmNvMR0wGwYJKoZIhvcNAQkBFg5wZm1AZ2Fycml0
eS5jbzAeFw0yNDAzMTYxNDQ1MjNaFw0yNTAzMTYxNDQ1MjNaMIGPMQswCQYDVQQG
EwJVUzESMBAGA1UECAwJTWlubmVzb3RhMRQwEgYDVQQHDAtCbG9vbWluZ3RvbjEZ
MBcGA1UECgwQR2Fycml0eSBTb2Z0d2FyZTEcMBoGA1UEAwwTcmVnaXN0cnkuZ2Fy
cml0eS5jbzEdMBsGCSqGSIb3DQEJARYOcGZtQGdhcnJpdHkuY28wggIiMA0GCSqG
SIb3DQEBAQUAA4ICDwAwggIKAoICAQDvX5tz1Ujod4fxrJuLmwr6CsFVofYeoKlh
Bpy8qFS0JDHGL5nXHGNoy96zJd9Do7A//e3S1mJDAgKAlCBuCy6VkI1cdOBQoHPx
GjmtcvvryZBx+jTHKterlZPkdb2orrsfULpnpINH3ymGngXrNCcDTt6JoNeq1XfP
/YPXRtklaK0h1pe6w3p/69D7KmwtJVFjQe22JnSC1tT4CXwwK2vRT+Q6lrIn9nk0
ZLTCu592CELpyvqLiasv3zO8gpmD+Am3Yo2RuCd2imkV6urg7iXd5w4cikNlxreZ
LDidnbsUM3U+q5IcNufO28+KlDETOQALYHVhtT4FE6eSqCPeXm2NTuxG2ENbDz3U
n24GduSFC+F2im2Aejtz2QtMVcgGK03cmTXJj86UVVPweEerZ/lS8LenX1jpZoju
QGV/9/EDv5+DZWyP1oKjbQ7936/4gF4toobvASaPOsbB0WMvhi/Iaqpp0JNpymfB
xcsmJoBC67EAYLijtpfa5qoeQwaNSLRlByb3+pI6FkE7Sh4W/l15lnyDXVJ+9z78
CvxCU6+6zrpJqWQFMA55Izz1d2lRNRKvzWzxcRW4CXUOaRBniI4M1ZGZrkx09DLm
9VX0JqAbiUbltuEY8ul9V/lOOyX5YkXNOxT6XTfX2NTglZr8n6/7b+v9leJr/HsS
WwrT/iYObQIDAQABo3MwcTAdBgNVHQ4EFgQU0r57vD+mMmIztQqN/BvBHNvtk60w
HwYDVR0jBBgwFoAU0r57vD+mMmIztQqN/BvBHNvtk60wDwYDVR0TAQH/BAUwAwEB
/zAeBgNVHREEFzAVghNyZWdpc3RyeS5nYXJyaXR5LmNvMA0GCSqGSIb3DQEBCwUA
A4ICAQAxLuEHrl5SQOdHqVUna51K6PzMkChqo2RttymIRE1o1eXnE2dvhMH7lg8b
rr8e0hZkjLHo8E1kJiBXpf1NOHqCt8BHf0BAvXO8iOuJNgZvC6TPoSa7c7ASXWE+
wuhJZO4jvnPRXnwSNXPnqqBAahMCD7KAClOxdySiS5TS+IPPUu4fZMowKMPeUg6z
p70K1F3tT2AVLxlMJrwANX2nqWyRKo91pM+rOp7A+++NBlxHQ3gU7dMmDUpq7mjv
HdNlox9tPup+/vhFivtdSii9y7pitz3UEk3gvRQ2pLdzJq0tfnkVEwqQf4TalxEO
zedZqzEeWmeJ8500CQExROV/ezgYdKtPxHr5M5KsEHILjfDZdREvY7WaUqa7Jz7k
cIcbD6RyzobL+Ha3hOR9tmd09d2EeCbCFF9Mz65JM0ZzPiS4xhJVEajgUSTkS+Xm
NEzDUkpZ+3YyCmFvClXnEKT4m3YVSDR2DzGe4pzjL2d38j9xSR6PKTPelCyWWOgb
GLrDvUfgd3O1jRPCGoWk6eVJjE0frHthqUUt8nZsqGuzvnfKw0pzxorcAqM1Nm31
FwrAIzyD6kGMrVDTWL+IAcZhmCJqIYxp09V6fn5kX4agJtvA9WrLIVsXjaM2VHSK
B2a8Xtk+g7MBT4OUOl6/c3H3URvXZxEKM2yi/9Mr6DmBo57HMA==
-----END CERTIFICATE-----