github actions

This commit is contained in:
STAM 2020-11-24 02:51:55 +03:00
parent 585039aa5a
commit 19ce2c0447
2 changed files with 453 additions and 0 deletions

184
.github/workflows/docker-develop.yml vendored Normal file
View File

@ -0,0 +1,184 @@
name: develop
on:
pull_request:
branches:
- '*'
tags:
- '*'
push:
branches:
- 'develop'
jobs:
build-forked-fixed:
name: Forked and fixed images
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Log into registry
run: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
##########
- name: Build Zabbix Agent
run: docker build --compress -t epicmorg/zabbix-agent:latest zabbix/agent
- name: Build Zabbix Java Gateway
run: docker build --compress -t epicmorg/zabbix-java-gateway:latest zabbix/java-gateway
- name: Build Zabbix Server with MySQL
run: docker build --compress -t epicmorg/zabbix-server-mysql:latest zabbix/server
- name: Build Zabbix Web Apache2 with MySQL
run: docker build --compress -t epicmorg/zabbix-web-apache-mysql:latest zabbix/web
- name: Build Zabbix Proxy SQLite3
run: docker build --compress -t epicmorg/zabbix-proxy-sqlite3:latest zabbix/proxy
- name: Build NextCloud (latest)
run: docker build --compress -t epicmorg/nextcloud:latest nextcloud/latest
#########################################
#### Our High priority images
#########################################
# - name: Build Template
# run: docker build --compress -t user/repo:tag path/to/folder/contains/dockerfile
build-our-high:
name: Our High priority images
runs-on: ubuntu-20.04
needs: build-forked-fixed
steps:
- uses: actions/checkout@v2
- name: Log into registry
run: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
##########
- name: Build Base Production
run: docker build --compress -t epicmorg/prod:latest epicmorg/prod/main
- name: Build Base Production + JDK 6
run: docker build --compress -t epicmorg/prod:jdk6 epicmorg/prod/jdk6
- name: Build Base Production + JDK 7
run: docker build --compress -t epicmorg/prod:jdk7 epicmorg/prod/jdk7
- name: Build Base Production + JDK 8
run: docker build --compress -t epicmorg/prod:jdk8 epicmorg/prod/jdk8
- name: Build Base Production + JDK 11
run: docker build --compress -t epicmorg/prod:jdk11 epicmorg/prod/jdk11
##########
- name: Build Base Edge
run: docker build --compress -t epicmorg/edge:latest epicmorg/edge/main
- name: Build Base Edge + JDK 6
run: docker build --compress -t epicmorg/edge:jdk6 epicmorg/edge/jdk6
- name: Build Base Edge + JDK 7
run: docker build --compress -t epicmorg/edge:jdk7 epicmorg/edge/jdk7
- name: Build Base Edge + JDK 8
run: docker build --compress -t epicmorg/edge:jdk8 epicmorg/edge/jdk8
- name: Build Base Edge + JDK 11
run: docker build --compress -t epicmorg/edge:jdk11 epicmorg/edge/jdk11
##########
- name: Build Base Develop
run: docker build --compress -t epicmorg/devel:latest epicmorg/devel/main
- name: Build Base Develop + JDK 6
run: docker build --compress -t epicmorg/devel:jdk6 epicmorg/devel/jdk6
- name: Build Base Develop + JDK 7
run: docker build --compress -t epicmorg/devel:jdk7 epicmorg/devel/jdk7
- name: Build Base Develop + JDK 8
run: docker build --compress -t epicmorg/devel:jdk8 epicmorg/devel/jdk8
- name: Build Base Develop + JDK 11
run: docker build --compress -t epicmorg/devel:jdk11 epicmorg/devel/jdk11
##########
- name: Build TeamCity Agent
run: docker build --compress -t epicmorg/teamcity-agent:latest teamcity-agent
- name: Build NGinx (latest)
run: docker build --compress -t epicmorg/balancer:latest balancer/latest
- name: Build NGinx + PHP7.4
run: docker build --compress -t epicmorg/balancer:php balancer/php
- name: Build NGinx + RTMP-HLS
run: docker build --compress -t epicmorg/balancer:rtmp-hls balancer/rtmp-hls
- name: Build Apache (latest)
run: docker build --compress -t epicmorg/websites:latest websites/latest
- name: Build Apache + PHP7.4
run: docker build --compress -t epicmorg/websites:php7.4 websites/php7.4
- name: Build Apache + PHP7.3
run: docker build --compress -t epicmorg/websites:php7.3 websites/php7.3
- name: Build Apache + PHP7.2
run: docker build --compress -t epicmorg/websites:php7.2 websites/php7.2
- name: Build Testrail (always latest)
run: docker build --compress -t epicmorg/testrail:latest testrail
- name: Build PostgresSQL (latest)
run: docker build --compress -t epicmorg/postgres:latest postgres/latest
##########
- name: Build Bitbucket + JDK 8 (latest)
run: docker build --compress -t epicmorg/bitbucket:latest atlassian/bitbucket/latest
- name: Build Bitbucket + JDK 11 (latest-jdk11)
run: docker build --compress -t epicmorg/bitbucket:latest-jdk11 -f atlassian/bitbucket/latest/Dockerfile.jdk11 atlassian/bitbucket/latest
- name: Build Confluence + JDK 8 (latest)
run: docker build --compress -t epicmorg/confluence:latest atlassian/confluence/latest
- name: Build Confluence + JDK 11 (latest-jdk11)
run: docker build --compress -t epicmorg/confluence:latest-jdk11 -f atlassian/confluence/latest/Dockerfile.jdk11 atlassian/confluence/latest
- name: Build Jira + JDK 8 (latest)
run: docker build --compress -t epicmorg/jira:latest atlassian/jira/latest
- name: Build Jira + JDK 11 (latest-jdk11)
run: docker build --compress -t epicmorg/jira:latest-jdk11 -f atlassian/jira/latest/Dockerfile.jdk11 atlassian/jira/latest
- name: Build Fisheye + Crucible + JDK 8 (latest)
run: docker build --compress -t epicmorg/fisheye-crucible:latest atlassian/fisheye-crucible/latest
- name: Build Postgres (latest)
run: docker build --compress -t epicmorg/postgres:latest postgres/latest
##########
- name: Build qBitTorrent (latest)
run: docker build --compress -t epicmorg/qbittorrent:latest qbittorrent/latest
- name: Build qBitTorrent (unstable)
run: docker build --compress -t epicmorg/qbittorrent:unstable qbittorrent/latest
- name: Build qBitTorrent (stable)
run: docker build --compress -t epicmorg/qbittorrent:stable qbittorrent/stable
#########################################
#### Our minor priority images
#########################################
- name: Build vk2discord (latest)
run: docker build --compress -t epicmorg/vk2discord:latest vk2discord/latest

269
.github/workflows/docker-master.yml vendored Normal file
View File

@ -0,0 +1,269 @@
name: master
on:
push:
branches:
- 'master'
schedule:
- cron: '00 00 * * 6' # At 12:00 AM, only on Saturday
jobs:
build-forked-fixed:
name: Forked and fixed images
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Log into registry
run: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
##########
- name: Build Zabbix Agent
run: docker build --compress -t epicmorg/zabbix-agent:latest zabbix/agent
- name: Push Zabbix Agent
run: docker push epicmorg/zabbix-agent:latest
- name: Build Zabbix Java Gateway
run: docker build --compress -t epicmorg/zabbix-java-gateway:latest zabbix/java-gateway
- name: Push Zabbix Java Gateway
run: docker push epicmorg/zabbix-java-gateway:latest
- name: Build Zabbix Server with MySQL
run: docker build --compress -t epicmorg/zabbix-server-mysql:latest zabbix/server
- name: Push Zabbix Server with MySQL
run: docker push epicmorg/zabbix-server-mysql:latest
- name: Build Zabbix Web Apache2 with MySQL
run: docker build --compress -t epicmorg/zabbix-web-apache-mysql:latest zabbix/web
- name: Push Zabbix Web Apache2 with MySQL
run: docker push epicmorg/zabbix-web-apache-mysql:latest
- name: Build Zabbix Proxy SQLite3
run: docker build --compress -t epicmorg/zabbix-proxy-sqlite3:latest zabbix/proxy
- name: Push Zabbix Proxy SQLite3
run: docker push epicmorg/zabbix-proxy-sqlite3:latest
- name: Build NextCloud (latest)
run: docker build --compress -t epicmorg/nextcloud:latest nextcloud/latest
- name: Push NextCloud (latest)
run: docker push epicmorg/nextcloud:latest
#########################################
#### Our High priority images
#########################################
# - name: Build Template
# run: docker build --compress -t user/repo:tag path/to/folder/contains/dockerfile
# - name: Push Template
# run: docker push user/repo:tag
build-our-high:
name: Our High priority images
runs-on: ubuntu-20.04
needs: build-forked-fixed
steps:
- uses: actions/checkout@v2
- name: Log into registry
run: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
##########
- name: Build Base Production
run: docker build --compress -t epicmorg/prod:latest epicmorg/prod/main
- name: Push Base Production
run: docker push epicmorg/prod:latest
- name: Build Base Production + JDK 6
run: docker build --compress -t epicmorg/prod:jdk6 epicmorg/prod/jdk6
- name: Push Base Production + JDK 6
run: docker push epicmorg/prod:jdk6
- name: Build Base Production + JDK 7
run: docker build --compress -t epicmorg/prod:jdk7 epicmorg/prod/jdk7
- name: Push Base Production + JDK 7
run: docker push epicmorg/prod:jdk7
- name: Build Base Production + JDK 8
run: docker build --compress -t epicmorg/prod:jdk8 epicmorg/prod/jdk8
- name: Push Base Production + JDK 8
run: docker push epicmorg/prod:jdk8
- name: Build Base Production + JDK 11
run: docker build --compress -t epicmorg/prod:jdk11 epicmorg/prod/jdk11
- name: Push Base Production + JDK 11
run: docker push epicmorg/prod:jdk11
##########
- name: Build Base Edge
run: docker build --compress -t epicmorg/edge:latest epicmorg/edge/main
- name: Push Base Edge
run: docker push epicmorg/edge:latest
- name: Build Base Edge + JDK 6
run: docker build --compress -t epicmorg/edge:jdk6 epicmorg/edge/jdk6
- name: Push Base Edge + JDK 6
run: docker push epicmorg/edge:jdk6
- name: Build Base Edge + JDK 7
run: docker build --compress -t epicmorg/edge:jdk7 epicmorg/edge/jdk7
- name: Push Base Edge + JDK 7
run: docker push epicmorg/edge:jdk7
- name: Build Base Edge + JDK 8
run: docker build --compress -t epicmorg/edge:jdk8 epicmorg/edge/jdk8
- name: Push Base Edge + JDK 8
run: docker push epicmorg/edge:jdk8
- name: Build Base Edge + JDK 11
run: docker build --compress -t epicmorg/edge:jdk11 epicmorg/edge/jdk11
- name: Push Base Edge + JDK 11
run: docker push epicmorg/edge:jdk11
##########
- name: Build Base Develop
run: docker build --compress -t epicmorg/devel:latest epicmorg/devel/main
- name: Push Base Develop
run: docker push epicmorg/devel:latest
- name: Build Base Develop + JDK 6
run: docker build --compress -t epicmorg/devel:jdk6 epicmorg/devel/jdk6
- name: Push Base Develop + JDK 6
run: docker push epicmorg/devel:jdk6
- name: Build Base Develop + JDK 7
run: docker build --compress -t epicmorg/devel:jdk7 epicmorg/devel/jdk7
- name: Push Base Develop + JDK 7
run: docker push epicmorg/devel:jdk7
- name: Build Base Develop + JDK 8
run: docker build --compress -t epicmorg/devel:jdk8 epicmorg/devel/jdk8
- name: Push Base Develop + JDK 8
run: docker push epicmorg/devel:jdk8
- name: Build Base Develop + JDK 11
run: docker build --compress -t epicmorg/devel:jdk11 epicmorg/devel/jdk11
- name: Push Base Develop + JDK 11
run: docker push epicmorg/devel:jdk11
##########
- name: Build TeamCity Agent
run: docker build --compress -t epicmorg/teamcity-agent:latest teamcity-agent
- name: Push TeamCity Agent
run: docker push epicmorg/teamcity-agent:latest
- name: Build NGinx (latest)
run: docker build --compress -t epicmorg/balancer:latest balancer/latest
- name: Push NGinx (latest)
run: docker push epicmorg/balancer:latest
- name: Build NGinx + PHP7.4
run: docker build --compress -t epicmorg/balancer:php balancer/php
- name: Push NGinx + PHP7.4
run: docker push epicmorg/balancer:php
- name: Build NGinx + RTMP-HLS
run: docker build --compress -t epicmorg/balancer:rtmp-hls balancer/rtmp-hls
- name: Push NGinx + RTMP-HLS
run: docker push epicmorg/balancer:rtmp-hls
- name: Build Apache (latest)
run: docker build --compress -t epicmorg/websites:latest websites/latest
- name: Push Apache (latest)
run: docker push epicmorg/websites:latest
- name: Build Apache + PHP7.4
run: docker build --compress -t epicmorg/websites:php7.4 websites/php7.4
- name: Push Apache + PHP7.4
run: docker push epicmorg/websites:php7.4
- name: Build Apache + PHP7.3
run: docker build --compress -t epicmorg/websites:php7.3 websites/php7.3
- name: Push Apache + PHP7.3
run: docker push epicmorg/websites:php7.3
- name: Build Apache + PHP7.2
run: docker build --compress -t epicmorg/websites:php7.2 websites/php7.2
- name: Push Apache + PHP7.2
run: docker push epicmorg/websites:php7.2
- name: Build Testrail (always latest)
run: docker build --compress -t epicmorg/testrail:latest testrail
- name: Push Testrail (always latest)
run: docker push epicmorg/testrail:latest
- name: Build PostgresSQL (latest)
run: docker build --compress -t epicmorg/postgres:latest postgres/latest
- name: Push PostgresSQL (latest)
run: docker push epicmorg/postgres:latest
##########
- name: Build Bitbucket + JDK 8 (latest)
run: docker build --compress -t epicmorg/bitbucket:latest atlassian/bitbucket/latest
- name: Push Bitbucket + JDK 8 (latest)
run: docker push epicmorg/bitbucket:latest
- name: Build Bitbucket + JDK 11 (latest-jdk11)
run: docker build --compress -t epicmorg/bitbucket:latest-jdk11 -f atlassian/bitbucket/latest/Dockerfile.jdk11 atlassian/bitbucket/latest
- name: Push Bitbucket + JDK 11 (latest-jdk11)
run: docker push epicmorg/bitbucket:latest-jdk11
- name: Build Confluence + JDK 8 (latest)
run: docker build --compress -t epicmorg/confluence:latest atlassian/confluence/latest
- name: Push Confluence + JDK 8 (latest)
run: docker push epicmorg/confluence:latest
- name: Build Confluence + JDK 11 (latest-jdk11)
run: docker build --compress -t epicmorg/confluence:latest-jdk11 -f atlassian/confluence/latest/Dockerfile.jdk11 atlassian/confluence/latest
- name: Push Confluence + JDK 11 (latest-jdk11)
run: docker push epicmorg/confluence:latest-jdk11
- name: Build Jira + JDK 8 (latest)
run: docker build --compress -t epicmorg/jira:latest atlassian/jira/latest
- name: Push Jira + JDK 8 (latest)
run: docker push epicmorg/jira:latest
- name: Build Jira + JDK 11 (latest-jdk11)
run: docker build --compress -t epicmorg/jira:latest-jdk11 -f atlassian/jira/latest/Dockerfile.jdk11 atlassian/jira/latest
- name: Push Jira + JDK 11 (latest-jdk11)
run: docker push epicmorg/jira:latest-jdk11
- name: Build Fisheye + Crucible + JDK 8 (latest)
run: docker build --compress -t epicmorg/fisheye-crucible:latest atlassian/fisheye-crucible/latest
- name: Push Build Fisheye + Crucible + JDK 8 (latest)
run: docker push epicmorg/fisheye-crucible:latest
- name: Build Postgres (latest)
run: docker build --compress -t epicmorg/postgres:latest postgres/latest
- name: Push Postgres (latest)
run: docker push epicmorg/postgres:latest
##########
- name: Build qBitTorrent (latest)
run: docker build --compress -t epicmorg/qbittorrent:latest qbittorrent/latest
- name: Push qBitTorrent (latest)
run: docker push epicmorg/qbittorrent:latest
- name: Build qBitTorrent (unstable)
run: docker build --compress -t epicmorg/qbittorrent:unstable qbittorrent/latest
- name: Push qBitTorrent (unstable)
run: docker push epicmorg/qbittorrent:unstable
- name: Build qBitTorrent (stable)
run: docker build --compress -t epicmorg/qbittorrent:stable qbittorrent/stable
- name: Push qBitTorrent (stable)
run: docker push epicmorg/qbittorrent:stable
#########################################
#### Our minor priority images
#########################################
- name: Build vk2discord (latest)
run: docker build --compress -t epicmorg/vk2discord:latest vk2discord/latest
- name: Push vk2discord (latest)
run: docker push epicmorg/vk2discord:latest