gha & gl runnner

This commit is contained in:
STAM 2025-04-15 12:40:09 +03:00
parent 25b9a00147
commit 387656d646
No known key found for this signature in database
GPG Key ID: 711526C6938897F1
45 changed files with 946 additions and 188 deletions

View File

@ -13,7 +13,7 @@ on:
jobs:
build-forked-fixed-independed-images:
name: Forked and fixed independed images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v2
@ -87,7 +87,7 @@ jobs:
build-all-iamges:
name: All images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v2

View File

@ -20,7 +20,7 @@ jobs:
build-forked-fixed-independed-images:
name: Forked and fixed independed images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v2
@ -81,7 +81,7 @@ jobs:
build-base-prod-iamges:
name: EpicMorg Base Production images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v2
@ -126,7 +126,7 @@ jobs:
build-base-edge-iamges:
name: EpicMorg Base Edge images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -173,7 +173,7 @@ jobs:
build-base-develop-iamges:
name: EpicMorg Base Develop images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-edge-iamges
steps:
@ -220,7 +220,7 @@ jobs:
build-emg-main-iamges:
name: EpicMorg Main images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-develop-iamges
steps:
@ -282,7 +282,7 @@ jobs:
build-tr-iamges:
name: Testrail image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-emg-main-iamges
steps:
@ -309,7 +309,7 @@ jobs:
build-emg-additional-web-iamges:
name: EpicMorg Secondary images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-emg-main-iamges
steps:
@ -399,7 +399,7 @@ jobs:
build-atl-bb-iamges:
name: Atlassian Bitbucket latest images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -431,7 +431,7 @@ jobs:
build-atl-docs-iamges:
name: Atlassian Confluence latest images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -463,7 +463,7 @@ jobs:
build-atl-jira-iamges:
name: Atlassian Jira latest images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -495,7 +495,7 @@ jobs:
build-atl-fycru-iamges:
name: Atlassian Fisheye + Crucible images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -522,7 +522,7 @@ jobs:
build-qbt-iamges:
name: qBitTorrent images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-edge-iamges
steps:
@ -559,7 +559,7 @@ jobs:
build-pgsql-iamges:
name: PostgresSQL Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-edge-iamges
steps:
@ -651,7 +651,7 @@ jobs:
##################################################################################
build-nextcloud-backports:
name: NextCloud Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v2
@ -715,7 +715,7 @@ jobs:
build-atl-bb6-iamges:
name: Atlassian Bitbucket 6 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -1472,7 +1472,7 @@ jobs:
build-atl-bb7-iamges:
name: Atlassian Bitbucket 7 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -1634,7 +1634,7 @@ jobs:
build-atl-docs5-iamges:
name: Atlassian Confluence 5 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -1676,7 +1676,7 @@ jobs:
build-atl-docs6-iamges:
name: Atlassian Confluence 6 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -2249,7 +2249,7 @@ jobs:
build-atl-docs7-iamges:
name: Atlassian Confluence 7 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -2461,7 +2461,7 @@ jobs:
build-atl-jira5-iamges:
name: Atlassian Jira 5 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -2488,7 +2488,7 @@ jobs:
build-atl-jira6-iamges:
name: Atlassian Jira 6 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -2525,7 +2525,7 @@ jobs:
build-atl-jira7-iamges:
name: Atlassian Jira 7 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:
@ -3129,7 +3129,7 @@ jobs:
build-atl-jira8-iamges:
name: Atlassian Jira 8 Backport images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-base-prod-iamges
steps:

View File

@ -9,7 +9,7 @@ jobs:
build-python-base-images:
name: Build EpicMorg Advanced Debian Python Base Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Python 2.7 Main Image:"
run: cd linux/advanced/python/main/2.7 && pwd && make build && make deploy
@ -73,7 +73,7 @@ jobs:
build-python-develop-images:
name: Build EpicMorg Advanced Debian Python Develop Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-python-base-images
steps:
@ -92,8 +92,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Python 2.7 Develop Image:"
run: cd linux/advanced/python/develop/2.7 && pwd && make build && make deploy

View File

@ -10,7 +10,7 @@ jobs:
build-freegpt-webui-image:
name: EpicMorg EcoSystem freegpt-webui Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -28,8 +28,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy freegpt-webui 1.0
run: cd linux/ecosystem/freegpt-webui/1.0 && make build && make deploy

View File

@ -2,14 +2,14 @@ name: EpicMorg Advanced Images
on:
workflow_dispatch:
schedule:
- cron: '0 02 * * 2,4,6'
# schedule:
# - cron: '0 02 * * 2,4,6'
jobs:
build-images:
name: EpicMorg Advanced Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Mattermost Images:"
run: cd linux/advanced/mattermost && pwd && make build && make deploy

View File

@ -2,14 +2,14 @@ name: EpicMorg Advanced Nextcloud Images
on:
workflow_dispatch:
schedule:
- cron: '0 02 * * 2,4,6'
# schedule:
# - cron: '0 02 * * 2,4,6'
jobs:
build-pure-images:
name: EpicMorg Advanced Nextcloud Stock Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
# - name: "Build and Deploy Advanced Nextcloud 14 Stock Images:"
# run: cd linux/advanced/nextcloud/pure/14 && pwd && make build && make deploy
@ -97,7 +97,7 @@ jobs:
build-patched-images:
name: Advanced Nextcloud Patched Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -115,8 +115,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
# - name: "Build and Deploy Advanced Nextcloud 14 Patched Images:"
# run: cd linux/advanced/nextcloud/patched/14 && pwd && make build && make deploy

View File

@ -2,14 +2,14 @@ name: "EpicMorg Advanced Vscode Server Images"
on:
workflow_dispatch:
schedule:
- cron: '0 0 * * 2,4,6'
# schedule:
# - cron: '0 0 * * 2,4,6'
jobs:
build-images:
name: Build EpicMorg Advanced Vscode Server Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -28,8 +28,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
##################################################################################

View File

@ -2,14 +2,14 @@ name: EpicMorg Advanced Zabbix Images
on:
workflow_dispatch:
schedule:
- cron: '0 03 * * 2,4,6'
# schedule:
# - cron: '0 03 * * 2,4,6'
jobs:
build-latest-images:
name: EpicMorg Advanced Zabbix Latest Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/latest/agent && pwd && make build && make deploy
@ -64,7 +64,7 @@ jobs:
build-30-images:
name: Build EpicMorg Advanced Zabbix 3.0 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -82,8 +82,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/3.0/agent && pwd && make build && make deploy
@ -116,7 +116,7 @@ jobs:
build-40-images:
name: Build EpicMorg Advanced Zabbix 4.0 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -134,8 +134,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/4.0/agent && pwd && make build && make deploy
@ -168,7 +168,7 @@ jobs:
build-50-images:
name: Build EpicMorg Advanced Zabbix 5.0 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -186,8 +186,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/5.0/agent && pwd && make build && make deploy
@ -223,7 +223,7 @@ jobs:
build-52-images:
name: Build EpicMorg Advanced Zabbix 5.2 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -241,8 +241,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/5.2/agent && pwd && make build && make deploy
@ -278,7 +278,7 @@ jobs:
build-54-images:
name: Build EpicMorg Advanced Zabbix 5.4 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -296,8 +296,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/5.4/agent && pwd && make build && make deploy
@ -333,7 +333,7 @@ jobs:
build-60-images:
name: Build EpicMorg Advanced Zabbix 6.0 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -351,8 +351,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/6.0/agent && pwd && make build && make deploy
@ -388,7 +388,7 @@ jobs:
build-62-images:
name: Build EpicMorg Advanced Zabbix 6.2 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -406,8 +406,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/6.2/agent && pwd && make build && make deploy
@ -443,7 +443,7 @@ jobs:
build-64-images:
name: Build EpicMorg Advanced Zabbix 6.4 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -461,8 +461,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/6.4/agent && pwd && make build && make deploy
@ -498,7 +498,7 @@ jobs:
build-70-images:
name: Build EpicMorg Advanced Zabbix 7.0 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -516,8 +516,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/7.0/agent && pwd && make build && make deploy
@ -551,9 +551,9 @@ jobs:
##################################################################################
build-trunk-images:
name: Build EpicMorg Advanced Zabbix trunk Images
runs-on: ubuntu-24.04
build-72-images:
name: Build EpicMorg Advanced Zabbix 7.2 Images
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -571,8 +571,63 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/7.2/agent && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Agent2 Images:"
run: cd linux/advanced/zabbix/7.2/agent2 && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Java Gateway Images:"
run: cd linux/advanced/zabbix/7.2/java-gateway && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
run: cd linux/advanced/zabbix/7.2/proxy-mysql && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
run: cd linux/advanced/zabbix/7.2/proxy-sqlite3 && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
run: cd linux/advanced/zabbix/7.2/server-mysql && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
run: cd linux/advanced/zabbix/7.2/server-pgsql && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
run: cd linux/advanced/zabbix/7.2/snmptraps && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
run: cd linux/advanced/zabbix/7.2/web-mysql && pwd && make build && make deploy
- name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
run: cd linux/advanced/zabbix/7.2/web-pgsql && pwd && make build && make deploy
##################################################################################
build-trunk-images:
name: Build EpicMorg Advanced Zabbix trunk Images
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
- name: Log into docker registry
run: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
- name: Log into harbor registry
run: echo "${{ secrets.HARBOR_SERVER_KEY }}" | docker login -u "${{ secrets.HARBOR_SERVER_LOGIN }}" --password-stdin "${{ secrets.HARBOR_SERVER_URL }}"
- name: Check buildah
run: |
buildah --version
buildah info
- name: Test Make
run: make
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Zabbix Agent Images:"
run: cd linux/advanced/zabbix/trunk/agent && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-10-images:
name: Build EpicMorg Atlassian Main Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Atlassian Bitbucket Image:"
run: cd linux/ecosystem/atlassian/bitbucket/latest && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-10-images:
name: Build EpicMorg Debian 10 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
##################################################################################

View File

@ -9,7 +9,7 @@ jobs:
build-10-images:
name: Build EpicMorg Debian 11 LTS Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Debian 11 LTS slim Image:"
run: cd linux/ecosystem/epicmorg/debian/11-bullseye/slim && pwd && make build && make deploy

View File

@ -13,7 +13,7 @@ jobs:
build-10-images:
name: Build EpicMorg Debian 12 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -31,8 +31,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Debian 12 slim Image:"
run: cd linux/ecosystem/epicmorg/debian/12-bookworm/slim && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-10-images:
name: Build EpicMorg Debian 13 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Debian 13 slim Image:"
run: cd linux/ecosystem/epicmorg/debian/13-trixie/slim && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-06-images:
name: Build EpicMorg Debian 6 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Debian 6 slim Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/slim && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-07-images:
name: Build EpicMorg Debian 7 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Debian 7 slim Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/slim && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-08-images:
name: Build EpicMorg Debian 8 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Debian 8 slim Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/slim && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-09-images:
name: Build EpicMorg Debian 9 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Debian 9 slim Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/slim && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-10-images:
name: Build EpicMorg Debian SID Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Debian SID slim Image:"
run: cd linux/ecosystem/epicmorg/debian/sid/slim && pwd && make build && make deploy

View File

@ -0,0 +1,261 @@
name: EpicMorg EcoSystem Github Runner Images
on:
workflow_dispatch:
# schedule:
# - cron: '4 5 * * 2,4,6'
jobs:
build-glr-main-images:
name: Build EpicMorg GitHub Runner Main Images
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
- name: Log into docker registry
run: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
- name: Log into harbor registry
run: echo "${{ secrets.HARBOR_SERVER_KEY }}" | docker login -u "${{ secrets.HARBOR_SERVER_LOGIN }}" --password-stdin "${{ secrets.HARBOR_SERVER_URL }}"
- name: Check buildah
run: |
buildah --version
buildah info
- name: Test Make
run: make
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy GitHub Runner Minimal Image:"
run: cd linux/ecosystem/github/runner/minimal && pwd && make build && make deploy
- name: "Build and Deploy GitHub Runner Main Image:"
run: cd linux/ecosystem/github/runner/latest && pwd && make build && make deploy
###################################################################################
#
# build-glr-other-images:
# name: Build EpicMorg GitHub Runner Oter Images
# runs-on: [self-hosted]
# needs: build-glr-main-images
#
# steps:
# - uses: actions/checkout@v4
# - name: Log into registry
# run: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
#
# - name: Check buildah
# run: |
# buildah --version
# buildah info
#
# - name: Test Make
# run: make
#
# - name: Install requirements.txt
# run: make pip
#
# - name: "Build and Deploy GitHub Runner amxX 1.9 SDK Image:"
# run: cd linux/ecosystem/github/runner/amxx-sdk/1.9 && pwd && make build && make deploy
#
# - name: "Build and Deploy GitHub Runner amxX 1.10 SDK Image:"
# run: cd linux/ecosystem/github/runner/amxx-sdk/1.10 && pwd && make build && make deploy
#
###################################################################################
#
# - name: Cleanup
# run: make clean
#
###################################################################################
#
# - name: "Build and Deploy GitHub Runner Android SDK Image (jdk8):"
# run: cd linux/ecosystem/github/runner/android-sdk/jdk8 && pwd && make build && make deploy
#
###################################################################################
#
# - name: Cleanup
# run: make clean
#
###################################################################################
#
# - name: "Build and Deploy GitHub Runner Android SDK Image (jdk11):"
# run: cd linux/ecosystem/github/runner/android-sdk/jdk11 && pwd && make build && make deploy
#
###################################################################################
#
# - name: Cleanup
# run: make clean
#
###################################################################################
#
# - name: "Build and Deploy GitHub Runner Android SDK Image (jdk17):"
# run: cd linux/ecosystem/github/runner/android-sdk/jdk17 && pwd && make build && make deploy
#
###################################################################################
#
# - name: Cleanup
# run: make clean
#
###################################################################################
#
# - name: "Build and Deploy GitHub Runner Atlassian SDK Image:"
# run: cd linux/ecosystem/github/runner/atlassian-sdk && pwd && make build && make deploy
#
###################################################################################
#
# - name: Cleanup
# run: make clean
#
###################################################################################
#
# - name: "Build and Deploy GitHub Runner dotNet SDK Image:"
# run: cd linux/ecosystem/github/runner/dotnet-sdk && pwd && make build && make deploy
#
# - name: "Build and Deploy GitHub Runner node0.12 Image:"
# run: cd linux/ecosystem/github/runner/node0.12 && pwd && make build && make deploy
#
# - name: "Build and Deploy GitHub Runner node4 Image:"
# run: cd linux/ecosystem/github/runner/node4 && pwd && make build && make deploy
#
###################################################################################
#
# - name: Cleanup
# run: make clean
#
###################################################################################
##
## - name: "Build and Deploy GitHub Runner node5 Image:"
## run: cd linux/ecosystem/github/runner/node5 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node6 Image:"
## run: cd linux/ecosystem/github/runner/node6 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node7 Image:"
## run: cd linux/ecosystem/github/runner/node7 && pwd && make build && make deploy
##
## ##################################################################################
##
## - name: Cleanup
## run: make clean
##
## ##################################################################################
##
## - name: "Build and Deploy GitHub Runner node8 Image:"
## run: cd linux/ecosystem/github/runner/node8 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node9 Image:"
## run: cd linux/ecosystem/github/runner/node9 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node10 Image:"
## run: cd linux/ecosystem/github/runner/node10 && pwd && make build && make deploy
##
## ##################################################################################
##
## - name: Cleanup
## run: make clean
##
## ##################################################################################
##
## - name: "Build and Deploy GitHub Runner node11 Image:"
## run: cd linux/ecosystem/github/runner/node11 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node12 Image:"
## run: cd linux/ecosystem/github/runner/node12 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node13 Image:"
## run: cd linux/ecosystem/github/runner/node13 && pwd && make build && make deploy
##
## ##################################################################################
##
## - name: Cleanup
## run: make clean
##
## ##################################################################################
##
## - name: "Build and Deploy GitHub Runner node14 Image:"
## run: cd linux/ecosystem/github/runner/node14 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node15 Image:"
## run: cd linux/ecosystem/github/runner/node15 && pwd && make build && make deploy
##
##
## ##################################################################################
##
## - name: Cleanup
## run: make clean
##
## ##################################################################################
##
## - name: "Build and Deploy GitHub Runner node16 Image:"
## run: cd linux/ecosystem/github/runner/node16 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node17 Image:"
## run: cd linux/ecosystem/github/runner/node17 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node18 Image:"
## run: cd linux/ecosystem/github/runner/node18 && pwd && make build && make deploy
##
## ##################################################################################
##
## - name: Cleanup
## run: make clean
##
## ##################################################################################
##
## - name: "Build and Deploy GitHub Runner node19 Image:"
## run: cd linux/ecosystem/github/runner/node19 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node20 Image:"
## run: cd linux/ecosystem/github/runner/node20 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node21 Image:"
## run: cd linux/ecosystem/github/runner/node21 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner node22 Image:"
## run: cd linux/ecosystem/github/runner/node22 && pwd && make build && make deploy
##
## ##################################################################################
##
## - name: Cleanup
## run: make clean
##
## ##################################################################################
##
## - name: "Build and Deploy GitHub Runner php7.2 Image:"
## run: cd linux/ecosystem/github/runner/php7.2 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner php7.3 Image:"
## run: cd linux/ecosystem/github/runner/php7.3 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner php7.4 Image:"
## run: cd linux/ecosystem/github/runner/php7.4 && pwd && make build && make deploy
##
##
## ##################################################################################
##
## - name: Cleanup
## run: make clean
##
## ##################################################################################
##
## - name: "Build and Deploy GitHub Runner php8.0 Image:"
## run: cd linux/ecosystem/github/runner/php8.0 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner php8.1 Image:"
## run: cd linux/ecosystem/github/runner/php8.1 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner php8.2 Image:"
## run: cd linux/ecosystem/github/runner/php8.2 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner php8.3 Image:"
## run: cd linux/ecosystem/github/runner/php8.3 && pwd && make build && make deploy
##
## - name: "Build and Deploy GitHub Runner Steam SDK Image:"
## run: cd linux/ecosystem/github/runner/steam-sdk && pwd && make build && make deploy
##
## ##################################################################################
#

View File

@ -9,7 +9,7 @@ jobs:
build-glr-main-images:
name: Build EpicMorg Gitlab Runner Main Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,12 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Gitlab Runner minimal Image:"
run: cd linux/ecosystem/gitlab/runner/minimal && pwd && make build && make deploy
- name: "Build and Deploy Gitlab Runner Main Image:"
run: cd linux/ecosystem/gitlab/runner/latest && pwd && make build && make deploy
@ -37,7 +41,7 @@ jobs:
#
# build-glr-other-images:
# name: Build EpicMorg Gitlab Runner Oter Images
# runs-on: ubuntu-24.04
# runs-on: [self-hosted]
# needs: build-glr-main-images
#
# steps:

View File

@ -9,7 +9,7 @@ jobs:
build-p4-images:
name: Build EpicMorg Perfocre Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Perfocre r16.2 Image:"
run: cd linux/ecosystem/perforce/base/r16.2 && pwd && make build && make deploy
@ -107,7 +107,7 @@ jobs:
build-p4p-images:
name: Build EpicMorg Perfocre Proxy Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-p4-images
steps:
@ -126,8 +126,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Perfocre Proxy r16.2 Image:"
run: cd linux/ecosystem/perforce/p4p/r16.2 && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-pgsql-images:
name: Build EpicMorg PostgreSQL Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy PostgreSQL 8.2 Image:"
run: cd linux/ecosystem/postgres/8.2 && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-tca-main-images:
name: Build EpicMorg TeamCity Agent Main Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy TeamCity Agent Minimal Image (jdk21):"
run: cd linux/ecosystem/teamcity/agent/minimal && pwd && make build && make deploy
@ -40,7 +40,7 @@ jobs:
build-tca-other-images:
name: Build EpicMorg TeamCity Agent Oter Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
needs: build-tca-main-images
steps:
@ -59,8 +59,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
# - name: "Build and Deploy TeamCity Agent amxX 1.9 SDK Image:"
# run: cd linux/ecosystem/teamcity/agent/amxx-sdk/1.9 && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-testrail-images:
name: Build EpicMorg Testrail Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
# needs: build-php-images
steps:
@ -28,8 +28,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Cassandra 3.11 Image:"
run: cd linux/advanced/cassandra/3.11 && pwd && make build && make deploy
@ -38,7 +38,7 @@ jobs:
build-testrail-702-images:
name: Build EpicMorg Testrail 7.0.2.1016 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
# needs: build-php-images
steps:
@ -57,8 +57,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Testrail 7.0.2.1016 Image:"
run: cd linux/ecosystem/testrail/7.0.2.1016/main && pwd && make build && make deploy
@ -73,7 +73,7 @@ jobs:
build-testrail-741-images:
name: Build EpicMorg Testrail 7.4.1.8092 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
# needs: build-php-images
steps:
@ -92,8 +92,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Testrail 7.4.1.8092 Image:"
run: cd linux/ecosystem/testrail/7.4.1.8092/main && pwd && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-apache2-images:
name: Build EpicMorg Apache 2 Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
# - name: "Build and Deploy Apache 2 Latest Image:"
# run: cd linux/ecosystem/apache2/latest && pwd && make build && make deploy
@ -84,7 +84,7 @@ jobs:
#
# build-nginx-images:
# name: Build EpicMorg NginX Images
# runs-on: ubuntu-24.04
# runs-on: [self-hosted]
#
# steps:
# - uses: actions/checkout@v4

View File

@ -9,7 +9,7 @@ jobs:
build-torrserver-image:
name: EpicMorg EcoSystem TorrServer Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy TorrServer
run: cd linux/ecosystem/torrserver && make build && make deploy
@ -37,7 +37,7 @@ jobs:
build-ers-image:
name: EpicMorg EcoSystem Electron Release Server Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -55,8 +55,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy Electron Release Server
run: cd linux/ecosystem/electron-release-server && make build && make deploy
@ -65,7 +65,7 @@ jobs:
build-vk2discord-image:
name: EpicMorg EcoSystem vk2discord Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -83,8 +83,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy vk2discord
run: cd linux/ecosystem/vk2discord && make build && make deploy
@ -93,7 +93,7 @@ jobs:
build-qbittorrent-image:
name: EpicMorg EcoSystem qBittorrent Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -111,8 +111,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy qBittorrent 4.4.0
run: cd linux/ecosystem/qbittorrent/4.4.0 && make build && make deploy
@ -232,7 +232,7 @@ jobs:
build-opentracker-image:
name: EpicMorg EcoSystem openTracker Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -250,8 +250,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy openTracker
run: cd linux/ecosystem/opentracker && make build && make deploy
@ -260,7 +260,7 @@ jobs:
build-retracker-image:
name: EpicMorg EcoSystem reTracker Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -278,8 +278,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
# to rework
# - name: Build and Deploy reTracker
# run: cd linux/ecosystem/retracker && make build && make deploy
@ -288,7 +288,7 @@ jobs:
build-torrust-tracker-image:
name: EpicMorg EcoSystem Torrust Tracker Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -306,8 +306,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy Torrust Tracker
run: cd linux/ecosystem/torrust-tracker && make build && make deploy
@ -319,7 +319,7 @@ jobs:
build-monero-cli-image:
name: EpicMorg EcoSystem Monero CLI Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -337,8 +337,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy Monero CLI
run: cd linux/ecosystem/monero/monerod && make build && make deploy
@ -347,7 +347,7 @@ jobs:
build-monero-p2pool-image:
name: EpicMorg EcoSystem Monero p2pool Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -365,8 +365,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy Monero p2pool
run: cd linux/ecosystem/monero/p2pool && make build && make deploy
@ -375,7 +375,7 @@ jobs:
build-ninjam-image:
name: EpicMorg EcoSystem ninjam Image
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -393,8 +393,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: Build and Deploy ninjam
run: cd linux/ecosystem/ninjam/latest && make build && make deploy

View File

@ -9,7 +9,7 @@ jobs:
build-images:
name: EpicMorg Advanced Images
runs-on: ubuntu-24.04
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v4
@ -27,8 +27,8 @@ jobs:
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
# - name: Install requirements.txt
# run: make pip
- name: "Build and Deploy Advanced Sentry Image:"
run: cd linux/experimental/sentry/latest && pwd && make build && make deploy

View File

@ -1,5 +1,6 @@
# Changelog
* `apr`
* added `github runner` basic images.
* updated `opentracker`
* updated `retracker`
* updated `torrserver`

View File

@ -1,4 +1,4 @@
VERSION = "2025.03.22"
VERSION = "2025.04.18"
AUTHOR = "EpicMorg"
MODIFIED = "STAM"
DOCKER_SCAN_SUGGEST = false
@ -392,6 +392,7 @@ ecosystem-images:
make ecosystem-postgres-images
make ecosystem-teamcity-agent-images
make ecosystem-gitlab-runner-images
make ecosystem-github-runner-images
# make ecosystem-nginx-images
# make advanced-vscode-server-images
# make bundle-jira
@ -1417,6 +1418,10 @@ ecosystem-teamcity-agent-images:
cd `pwd`/linux/ecosystem/teamcity/agent/php83 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/teamcity/agent/php84 && pwd && make build && make deploy
ecosystem-github-runner-images:
cd `pwd`/linux/ecosystem/github/runner/minimal && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/github/runner/latest && pwd && make build && make deploy
ecosystem-gitlab-runner-images:
cd `pwd`/linux/ecosystem/gitlab/runner/minimal && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/gitlab/runner/latest && pwd && make build && make deploy

View File

@ -0,0 +1,123 @@
FROM hub.epicm.org/epicmorg/github-runner:minimal
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
##################################################################
# OCI setup: Buildah, Podman, Kaniko, Docker
##################################################################
# https://docs.docker.com/build/architecture/#install-buildx
RUN 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 bookworm stable nightly" | tee /etc/apt/sources.list.d/docker.list > /dev/null && \
apt-get update && \
apt-get install -y --no-install-recommends --allow-unauthenticated \
docker-ce \
docker-ce-cli \
containerd.io \
docker-buildx-plugin \
docker-compose-plugin \
containerd.io \
buildah \
podman \
podman-compose \
fuse-overlayfs && \
pip3 install --break-system-packages --no-cache-dir \
kaniko-wrapper \
buildah-wrapper && \
systemctl disable docker && \
systemctl disable podman && \
rm -rf /bin/docker-compose && \
rm -rf /sbin/docker-compose && \
rm -rf /usr/bin/docker-compose && \
rm -rf /usr/sbin/docker-compose && \
rm -rf /usr/local/bin/docker-compose && \
rm -rf /usr/local/sbin/docker-compose && \
export DOCKER_COMPOSE_VERSION=`curl --silent https://api.github.com/repos/docker/compose/releases/latest | jq .name -r` && \
echo "Latest compose is: ${DOCKER_COMPOSE_VERSION}" && \
curl -SL https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 -o /usr/local/bin/docker-compose && \
chmod +x /usr/local/bin/docker-compose && \
# cleanup
apt-get clean -y && \
apt-get clean all -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*
##################################################################
# TeamCity Agent post-setup
##################################################################
ENV BUILDAH_FORMAT=docker
ENV BUILDAH_ISOLATION=docker
ENV DOCKER_HOST="unix:///var/run/docker.sock"
ENV PODMAN_HOST="unix:///var/run/docker.sock"
COPY etc/ /etc/
##################################################################
# installing dotnet
##################################################################
ENV DOTNET_CHANNEL=STS
ENV DOTNET_ROOT=${EMG_LOCAL_BASE_DIR}/dotnet/${DOTNET_CHANNEL}
ARG DOTNET_TOOLS_DIR=${DOTNET_ROOT}/tools
ARG DOTNET_INSTALL_DIR=${DOTNET_ROOT}
ARG DOTNET_INSTALL_SCRIPT_URL=https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.sh
ENV DOTNET_CLI_TELEMETRY_OPTOUT=true
ENV DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
ADD ${DOTNET_INSTALL_SCRIPT_URL} /tmp
RUN mkdir -p ${DOTNET_ROOT} && \
chmod +x /tmp/dotnet-install.sh && \
/tmp/dotnet-install.sh --verbose --no-path --install-dir ${DOTNET_ROOT} --channel ${DOTNET_CHANNEL} --version latest
##################################################################
# Setup $PATH
##################################################################
ENV PATH=$PATH:${DOTNET_ROOT}:${DOTNET_TOOLS_DIR}
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo $(dotnet --info) && \
echo $(dotnet --list-sdks) && \
echo $(dotnet --list-runtimes) && \
echo "============================================="
##################################################################
# Mono
##################################################################
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF && \
# echo "deb https://download.mono-project.com/repo/debian stable-buster main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list && \
# echo "deb https://download.mono-project.com/repo/debian nightly-buster main" | sudo tee /etc/apt/sources.list.d/mono-official-nightly.list && \
echo "deb https://download.mono-project.com/repo/debian preview-buster main" | sudo tee /etc/apt/sources.list.d/mono-official-preview.list && \
apt-get update && \
apt-get install -y --allow-unauthenticated \
mono-complete \
mono-llvm-support \
mono-devel \
mono-dbg \
referenceassemblies-pcl \
ca-certificates-mono \
mono-xsp4
##################################################################
# Cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /root/tmp/* && \
rm -rfv /tmp/*
##################################################################
# final config
##################################################################
WORKDIR ${RUNNER_DIST_DIR}
VOLUME ["/var/lib/docker", "/var/lib/containers", "/var/tmp"]
RUN updatedb

View File

@ -0,0 +1,44 @@
all: app
app:
make pip
make build
make deploy
make clean
build:
make build-buildah
deploy:
make deploy-buildah
build-buildah:
buildah-wrapper --build
deploy-buildah:
buildah-wrapper --deploy
build-kaniko:
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:debug --dry-run
deploy-kaniko:
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:debug
build-compose:
docker-compose build --compress --parallel --progress plain
deploy-compose:
docker-compose push
clean:
docker container prune -f
docker image prune -f
docker network prune -f
docker volume prune -f
docker system prune -af
buildah rm -a
buildah rmi -a
pip:
pip3 install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper
pip install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper

View File

@ -0,0 +1,5 @@
services:
app:
image: "hub.epicm.org/epicmorg/github-runner:latest"
build:
context: .

View File

@ -0,0 +1,79 @@
# For more information on this configuration file, see containers-registries.conf(5).
#
# NOTE: RISK OF USING UNQUALIFIED IMAGE NAMES
# We recommend always using fully qualified image names including the registry
# server (full dns name), namespace, image name, and tag
# (e.g., registry.redhat.io/ubi8/ubi:latest). Pulling by digest (i.e.,
# quay.io/repository/name@digest) further eliminates the ambiguity of tags.
# When using short names, there is always an inherent risk that the image being
# pulled could be spoofed. For example, a user wants to pull an image named
# `foobar` from a registry and expects it to come from myregistry.com. If
# myregistry.com is not first in the search list, an attacker could place a
# different `foobar` image at a registry earlier in the search list. The user
# would accidentally pull and run the attacker's image and code rather than the
# intended content. We recommend only adding registries which are completely
# trusted (i.e., registries which don't allow unknown or anonymous users to
# create accounts with arbitrary names). This will prevent an image from being
# spoofed, squatted or otherwise made insecure. If it is necessary to use one
# of these registries, it should be added at the end of the list.
#
# # An array of host[:port] registries to try when pulling an unqualified image, in order.
# unqualified-search-registries = ["example.com"]
#
# [[registry]]
# # The "prefix" field is used to choose the relevant [[registry]] TOML table;
# # (only) the TOML table with the longest match for the input image name
# # (taking into account namespace/repo/tag/digest separators) is used.
# #
# # The prefix can also be of the form: *.example.com for wildcard subdomain
# # matching.
# #
# # If the prefix field is missing, it defaults to be the same as the "location" field.
# prefix = "example.com/foo"
#
# # If true, unencrypted HTTP as well as TLS connections with untrusted
# # certificates are allowed.
# insecure = false
#
# # If true, pulling images with matching names is forbidden.
# blocked = false
#
# # The physical location of the "prefix"-rooted namespace.
# #
# # By default, this is equal to "prefix" (in which case "prefix" can be omitted
# # and the [[registry]] TOML table can only specify "location").
# #
# # Example: Given
# # prefix = "example.com/foo"
# # location = "internal-registry-for-example.net/bar"
# # requests for the image example.com/foo/myimage:latest will actually work with the
# # internal-registry-for-example.net/bar/myimage:latest image.
#
# # The location can be empty iff prefix is in a
# # wildcarded format: "*.example.com". In this case, the input reference will
# # be used as-is without any rewrite.
# location = internal-registry-for-example.com/bar"
#
# # (Possibly-partial) mirrors for the "prefix"-rooted namespace.
# #
# # The mirrors are attempted in the specified order; the first one that can be
# # contacted and contains the image will be used (and if none of the mirrors contains the image,
# # the primary location specified by the "registry.location" field, or using the unmodified
# # user-specified reference, is tried last).
# #
# # Each TOML table in the "mirror" array can contain the following fields, with the same semantics
# # as if specified in the [[registry]] TOML table directly:
# # - location
# # - insecure
# [[registry.mirror]]
# location = "example-mirror-0.local/mirror-for-foo"
# [[registry.mirror]]
# location = "example-mirror-1.local/mirrors/foo"
# insecure = true
# # Given the above, a pull of example.com/foo/image:latest will try:
# # 1. example-mirror-0.local/mirror-for-foo/image:latest
# # 2. example-mirror-1.local/mirrors/foo/image:latest
# # 3. internal-registry-for-example.net/bar/image:latest
# # in order, and use the first one that exists.
unqualified-search-registries = ["docker.io"]

View File

@ -0,0 +1,8 @@
[storage]
driver = "overlay"
runroot = "/run/containers/storage"
graphroot = "/var/lib/containers/storage"
#rootless_storage_path = "$HOME/.local/share/containers/storage"
[storage.options.overlay]
mount_program = "/usr/bin/fuse-overlayfs"

View File

@ -0,0 +1,13 @@
[program:dockerd]
command=/usr/bin/dockerd --host unix:///var/run/docker.sock --experimental --iptables=false --bridge=none --log-level=warn
autostart=true
autorestart=true
killasgroup=true
stopasgroup=true
stdout_logfile=/var/log/supervisor/dockerd.out.log
stdout_logfile_maxbytes=128MB
stderr_logfile=/var/log/supervisor/dockerd.err.log
stderr_logfile_maxbytes=128MB
user=root
priority=1
startretries=5

View File

@ -0,0 +1,55 @@
FROM hub.epicm.org/epicmorg/debian:bookworm-develop
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
##################################################################
# GHA setup
##################################################################
USER root
ENV GIT_SSH_VARIANT=ssh
ENV RUNNER_VERSION=2.323.0
ENV RUNNER_DIST_DIR=${EMG_LOCAL_BASE_DIR}/github/actions-runner
ENV RUNNER_BIN_DIR=${RUNNER_DIST_DIR}/bin
ENV RUNNER_DIAG_DIR=${RUNNER_DIST_DIR}_diag
ENV RUNNER_WORK_DIR=${RUNNER_DIST_DIR}/_work
ENV RUNNER_URL=https://github.com/actions/runner/releases/download/v${RUNNER_VERSION}/actions-runner-linux-x64-${RUNNER_VERSION}.tar.gz
ENV RUNNER_TEMP=/tmp/actions-runner-linux-x64-${RUNNER_VERSION}.tar.gz
COPY etc/ /etc/
COPY usr/local/share/epicmorg/ /usr/local/share/epicmorg/
ADD ${RUNNER_URL} ${RUNNER_TEMP}
RUN mkdir -p ${RUNNER_DIST_DIR} ${RUNNER_DIST_DIR} ${RUNNER_WORK_DIR} && \
apt-get update && \
apt-get install -y --no-install-recommends --allow-unauthenticated \
supervisor && \
tar -xvzf ${RUNNER_TEMP} --directory ${RUNNER_DIST_DIR} && \
chmod +x ${RUNNER_DIST_DIR}/bin/*.sh && \
chmod +x ${RUNNER_DIST_DIR}/sbin/*.sh && \
${RUNNER_DIST_DIR}/bin//installdependencies.sh && \
sync
##################################################################
# Cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /root/tmp/* && \
rm -rfv /tmp/*
##################################################################
# final config
##################################################################
WORKDIR ${RUNNER_DIST_DIR}
VOLUME ["${RUNNER_WORK_DIR}", "${RUNNER_DIAG_DIR}", "/var/log/supervisor"]
CMD ["/usr/bin/supervisord"]
RUN updatedb

View File

@ -0,0 +1,44 @@
all: app
app:
make pip
make build
make deploy
make clean
build:
make build-buildah
deploy:
make deploy-buildah
build-buildah:
buildah-wrapper --build
deploy-buildah:
buildah-wrapper --deploy
build-kaniko:
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:debug --dry-run
deploy-kaniko:
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:debug
build-compose:
docker-compose build --compress --parallel --progress plain
deploy-compose:
docker-compose push
clean:
docker container prune -f
docker image prune -f
docker network prune -f
docker volume prune -f
docker system prune -af
buildah rm -a
buildah rmi -a
pip:
pip3 install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper
pip install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper

View File

@ -0,0 +1,5 @@
services:
app:
image: "hub.epicm.org/epicmorg/github-runner:minimal"
build:
context: .

View File

@ -0,0 +1,15 @@
[program:github-actions-runner]
command=/usr/local/share/epicmorg/github/actions-runner/sbin/entrypoint.sh
autostart=true
autorestart=true
killasgroup=true
stopasgroup=true
#stdout_logfile=/var/log/supervisor/github-agent.out.log
#stderr_logfile=/var/log/supervisor/github-agent.err.log
stdout_logfile=/dev/fd/1
stdout_logfile_maxbytes=0
stderr_logfile=/dev/fd/2
stderr_logfile_maxbytes=0
user=root
priority=10
startretries=5

View File

@ -0,0 +1,5 @@
[supervisord]
nodaemon=true
#[inet_http_server]
#port = 1337

View File

@ -0,0 +1,31 @@
#!/bin/bash
set -e # Exit immediately on any error
# Validate required environment variables
if [[ -z "${GITHUB_URL}" || -z "${GITHUB_TOKEN}" || -z "${RUNNER_NAME}" ]]; then
echo "❌ Error: Missing required variables - GITHUB_URL, GITHUB_TOKEN, RUNNER_NAME" >&2
exit 1
fi
# Navigate to runner directory (fail fast if missing)
cd "${RUNNER_DIST_DIR}" || {
echo "❌ Error: Runner directory not found" >&2
exit 1
}
# Register/replace the runner (--replace handles existing configurations)
echo "🚀 Registering GitHub runner with --replace flag..."
./config.sh \
--unattended \
--replace \
--url "${GITHUB_URL}" \
--token "${GITHUB_TOKEN}" \
--name "${RUNNER_NAME}" \
--work "${RUNNER_WORK_DIR:-_work}" || {
echo "❌ Error: Runner registration failed" >&2
exit 1
}
# Start the runner (exec replaces shell process for proper signal handling)
echo "🏃 Runner started successfully - waiting for jobs..."
exec ./run.sh

View File

@ -1,4 +1,4 @@
FROM hub.epicm.org/epicmorg/debian:bookworm-develop
FROM hub.epicm.org/epicmorg/gitlab-runner:minimal
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive

View File

@ -15,7 +15,10 @@ ENV GIT_SSH_VARIANT=ssh
ADD https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64 /tmp
RUN mkdir -p \
RUN apt-get update && \
apt-get install -y --no-install-recommends --allow-unauthenticated \
supervisor && \
mkdir -p \
${GITLAB_RUNNER_DIR} \
${GITLAB_RUNNER_BIN_DIR} \
${GITLAB_RUNNER_CONF_DIR} \
@ -30,6 +33,8 @@ ENV PATH=${GITLAB_RUNNER_BIN_DIR}:$PATH
RUN gitlab-runner --version
COPY etc/ /etc/
##################################################################
# cleaninig up
##################################################################
@ -46,7 +51,7 @@ RUN apt-get clean -y && \
##################################################################
WORKDIR ${GITLAB_RUNNER_DIR}
VOLUME ["${GITLAB_RUNNER_CONF_DIR}", "${GITLAB_RUNNER_CERTS_DIR}", "${GITLAB_RUNNER_WORKER_DIR}", "/var/log/supervisor"]
VOLUME ["${GITLAB_RUNNER_CONF_DIR}", "${GITLAB_RUNNER_WORKER_DIR}", "/var/log/supervisor"]
CMD ["/usr/bin/supervisord"]