Add support for automated docker build

This commit is contained in:
Dane Everitt 2020-11-14 20:42:12 -08:00
parent d970ec35b7
commit 82b23ef638
No known key found for this signature in database
GPG Key ID: EEA66103B3D71F53
6 changed files with 68 additions and 18 deletions

View File

@ -1,12 +1,10 @@
name: "Build & Test" name: Run Tests
on: on:
push: push:
branches-ignore: branches-ignore:
- 'master' - 'master'
- 'release/**' - 'release/**'
pull_request: pull_request:
jobs: jobs:
build: build:
strategy: strategy:

View File

@ -1,16 +1,11 @@
name: "Code scanning - action" name: CodeQL Scanning
on: on:
push: branches:
- 'develop'
pull_request: pull_request:
schedule:
- cron: '0 21 * * 6'
jobs: jobs:
CodeQL-Build: CodeQL-Build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v2 uses: actions/checkout@v2
@ -18,12 +13,11 @@ jobs:
# We must fetch at least the immediate parents so that if this is # We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head. # a pull request then we can checkout the head.
fetch-depth: 2 fetch-depth: 2
# If this run was triggered by a pull request event, then checkout # If this run was triggered by a pull request event, then checkout
# the head of the pull request instead of the merge commit. # the head of the pull request instead of the merge commit.
- run: git checkout HEAD^2 - run: git checkout HEAD^2
if: ${{ github.event_name == 'pull_request' }} if: ${{ github.event_name == 'pull_request' }}
# Initializes the CodeQL tools for scanning. # Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL - name: Initialize CodeQL
uses: github/codeql-action/init@v1 uses: github/codeql-action/init@v1

47
.github/workflows/docker.yml vendored Normal file
View File

@ -0,0 +1,47 @@
name: Publish Docker Image
on:
push:
branches:
- 'develop'
tags:
- 'v*'
jobs:
push_to_registry:
name: Push Image to GitHub Packages
runs-on: ubuntu-latest
# Always run against a tag, even if the commit into the tag has [docker skip]
# within the commit message.
if: "!contains(github.ref, 'develop') || (!contains(github.event.head_commit.message, 'skip docker') && !contains(github.event.head_commit.message, 'docker skip'))"
steps:
- uses: actions/checkout@v2
- uses: crazy-max/ghaction-docker-meta@v1
id: docker_meta
with:
images: ghcr.io/pterodactyl/wings
- uses: docker/setup-qemu-action@v1
- uses: docker/setup-buildx-action@v1
- uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.REGISTRY_TOKEN }}
- name: Release Production Build
uses: docker/build-push-action@v2
if: "!contains(github.ref, 'develop')"
env:
REF: ${{ github.ref }}
with:
push: true
build-args: |
VERSION=${REF:11}
tags: ${{ steps.docker_meta.outputs.tags }}
labels: ${{ steps.docker_meta.outputs.labels }}
- name: Release Development Build
uses: docker/build-push-action@v2
if: "contains(github.ref, 'develop')"
with:
push: ${{ github.event_name != 'pull_request' }}
build-args: |
VERSION=dev-${GIT_COMMIT:0:7}
tags: ${{ steps.docker_meta.outputs.tags }}
labels: ${{ steps.docker_meta.outputs.labels }}

View File

@ -1,10 +1,8 @@
name: "Release" name: Create Release
on: on:
push: push:
tags: tags:
- 'v*' - 'v*'
jobs: jobs:
release: release:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04

View File

@ -1,5 +1,18 @@
# Changelog # Changelog
## v1.1.2
### Fixed
* Fixes binaries built as part of the release process not being usable in MUSL based environments (such as our Docker images).
* Fixes server states being incorrectly set back to offline when a server is started after a system restart.
### Changed
* Improved logic for cleaning `allowed_mount` paths for consistency.
* Certain context cancelation deadline errors are no longer wrong reported at an error level (since they're expected).
* Very minor micro-optimizations for some string handling with server console output.
### Added
* Added a hidden option to disable all disk checking for servers by setting the `disk_check_interval` to `0` in the config file.
## v1.1.1 ## v1.1.1
### Fixed ### Fixed
* Fixes certain files returning invalid data in the request due to a bad header set after sending data down the line. * Fixes certain files returning invalid data in the request due to a bad header set after sending data down the line.

View File

@ -1,7 +1,7 @@
version: '3.8' version: '3.8'
services: services:
wings: wings:
image: quay.io/pterodactyl/wings:latest image: ghcr.io/pterodactyl/wings:latest
restart: always restart: always
networks: networks:
- wings0 - wings0
@ -24,7 +24,7 @@ services:
# Required for ssl if you user let's encrypt. uncomment to use. # Required for ssl if you user let's encrypt. uncomment to use.
#- "/etc/letsencrypt/:/etc/letsencrypt/" #- "/etc/letsencrypt/:/etc/letsencrypt/"
networks: networks:
daemon0: wings0:
name: wings0 name: wings0
driver: bridge driver: bridge
ipam: ipam: