mirror of
https://github.com/JaCzekanski/Avocado.git
synced 2024-06-02 19:27:41 -04:00
ci: migrate deploys to Github Actions
ci: removed Travis CI config
This commit is contained in:
parent
e392943ed2
commit
2fd53255fd
|
@ -3,7 +3,7 @@ version: '{branch}-{build}'
|
|||
clone_depth: 1
|
||||
|
||||
environment:
|
||||
PREMAKE_VERSION: 5.0.0-alpha14
|
||||
PREMAKE_VERSION: 5.0.0-alpha15
|
||||
SDL_VERSION: 2.0.10
|
||||
matrix:
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||
|
|
|
@ -3,22 +3,18 @@
|
|||
|
||||
# Setup signing
|
||||
export BUILD_MODE="debug"
|
||||
if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
|
||||
openssl aes-256-cbc -K $encrypted_7333c7dd5b15_key -iv $encrypted_7333c7dd5b15_iv -in android/avocado.keystore.enc -out android/avocado.keystore -d
|
||||
if [[ -n "$GITHUB_HEAD_REF" ]]; then
|
||||
gpg --quiet --yes --decrypt --passphrase="$KEYSTORE_KEY" --output android/avocado.keystore android/avocado.keystore.gpg
|
||||
export BUILD_MODE="release"
|
||||
fi
|
||||
|
||||
if [ "$GITHUB_ACTIONS" = "true" ]; then
|
||||
export BUILD_MODE="debug"
|
||||
fi
|
||||
|
||||
mkdir -p "$HOME/.ccache"
|
||||
|
||||
docker run \
|
||||
-e CI=$CI \
|
||||
-e BUILD_MODE=$BUILD_MODE \
|
||||
-e keystore_password="$keystore_password" \
|
||||
-v $(pwd):/home/build \
|
||||
-e CI="$CI" \
|
||||
-e BUILD_MODE="$BUILD_MODE" \
|
||||
-e KEYSTORE_PASSWORD="$KEYSTORE_PASSWORD" \
|
||||
-v "$(pwd)":/home/build \
|
||||
-v "$HOME/.ccache":/root/.ccache \
|
||||
avocadoemu/android \
|
||||
/bin/bash -ex /home/build/.ci/android/build.sh
|
||||
|
|
|
@ -28,12 +28,14 @@ else
|
|||
fi
|
||||
|
||||
BRANCH=""
|
||||
if [[ ! -z "${TRAVIS_BRANCH}" ]]; then
|
||||
if [[ -n "${TRAVIS_BRANCH}" ]]; then
|
||||
BRANCH=$TRAVIS_BRANCH
|
||||
elif [[ ! -z "${APPVEYOR_REPO_BRANCH}" ]]; then
|
||||
elif [[ -n "${APPVEYOR_REPO_BRANCH}" ]]; then
|
||||
BRANCH=$APPVEYOR_REPO_BRANCH
|
||||
else
|
||||
echo "TRAVIS_BRANCH or APPVEYOR_REPO_BRANCH env not found"
|
||||
elif [[ -n "${GITHUB_REF}" ]]; then
|
||||
BRANCH=${GITHUB_REF##*/}
|
||||
else
|
||||
echo "TRAVIS_BRANCH, APPVEYOR_REPO_BRANCH or GITHUB_SHA env not found"
|
||||
exit 3
|
||||
fi
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ mkdir -p "$HOME/.ccache"
|
|||
|
||||
docker run \
|
||||
-e CI=$CI \
|
||||
-v $(pwd):/home/build \
|
||||
-v "$(pwd)":/home/build \
|
||||
-v "$HOME/.ccache":/root/.ccache \
|
||||
avocadoemu/linux-clang$CLANG_VERSION \
|
||||
/bin/bash -ex /home/build/.ci/linux/build.sh
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash -ex
|
||||
|
||||
export PREMAKE_VERSION="5.0.0-alpha14"
|
||||
export PREMAKE_VERSION="5.0.0-alpha15"
|
||||
|
||||
# Download Premake5
|
||||
wget -nv https://github.com/premake/premake-core/releases/download/v$PREMAKE_VERSION/premake-$PREMAKE_VERSION-macosx.tar.gz
|
||||
|
|
|
@ -1,82 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
if [ -z "$2" ]; then
|
||||
echo -e "WARNING!!\nYou need to pass the WEBHOOK_URL environment variable as the second argument to this script.\nFor details & guide, visit: https://github.com/DiscordHooks/travis-ci-discord-webhook" && exit
|
||||
fi
|
||||
|
||||
echo -e "[Webhook]: Sending webhook to Discord...\\n";
|
||||
|
||||
case $1 in
|
||||
"success" )
|
||||
EMBED_COLOR=3066993
|
||||
STATUS_MESSAGE="Passed"
|
||||
AVATAR="https://travis-ci.org/images/logos/TravisCI-Mascot-blue.png"
|
||||
;;
|
||||
|
||||
"failure" )
|
||||
EMBED_COLOR=15158332
|
||||
STATUS_MESSAGE="Failed"
|
||||
AVATAR="https://travis-ci.org/images/logos/TravisCI-Mascot-red.png"
|
||||
;;
|
||||
|
||||
* )
|
||||
EMBED_COLOR=0
|
||||
STATUS_MESSAGE="Status Unknown"
|
||||
AVATAR="https://travis-ci.org/images/logos/TravisCI-Mascot-1.png"
|
||||
;;
|
||||
esac
|
||||
|
||||
AUTHOR_NAME="$(git log -1 "$TRAVIS_COMMIT" --pretty="%aN")"
|
||||
COMMITTER_NAME="$(git log -1 "$TRAVIS_COMMIT" --pretty="%cN")"
|
||||
COMMIT_SUBJECT="$(git log -1 "$TRAVIS_COMMIT" --pretty="%s")"
|
||||
COMMIT_MESSAGE="$(git log -1 "$TRAVIS_COMMIT" --pretty="%b")"
|
||||
|
||||
if [ "$AUTHOR_NAME" == "$COMMITTER_NAME" ]; then
|
||||
CREDITS="$AUTHOR_NAME authored & committed"
|
||||
else
|
||||
CREDITS="$AUTHOR_NAME authored & $COMMITTER_NAME committed"
|
||||
fi
|
||||
|
||||
if [[ $TRAVIS_PULL_REQUEST != false ]]; then
|
||||
URL="https://github.com/$TRAVIS_REPO_SLUG/pull/$TRAVIS_PULL_REQUEST"
|
||||
else
|
||||
URL=""
|
||||
fi
|
||||
|
||||
TIMESTAMP=$(date +%FT%TZ)
|
||||
WEBHOOK_DATA='{
|
||||
"username": "",
|
||||
"avatar_url": "https://travis-ci.org/images/logos/TravisCI-Mascot-1.png",
|
||||
"embeds": [ {
|
||||
"color": '$EMBED_COLOR',
|
||||
"author": {
|
||||
"name": "Job #'"$TRAVIS_JOB_NUMBER"' (Build #'"$TRAVIS_BUILD_NUMBER"') '"$STATUS_MESSAGE"' - '"$TRAVIS_REPO_SLUG"'",
|
||||
"url": "'"$TRAVIS_BUILD_WEB_URL"'",
|
||||
"icon_url": "'$AVATAR'"
|
||||
},
|
||||
"title": "'"$COMMIT_SUBJECT"'",
|
||||
"url": "'"$URL"'",
|
||||
"description": "'"${COMMIT_MESSAGE//$'\n'/ }"\\n\\n"$CREDITS"'",
|
||||
"fields": [
|
||||
{
|
||||
"name": "Commit",
|
||||
"value": "'"[\`${TRAVIS_COMMIT:0:7}\`](https://github.com/$TRAVIS_REPO_SLUG/commit/$TRAVIS_COMMIT)"'",
|
||||
"inline": true
|
||||
},
|
||||
{
|
||||
"name": "Job",
|
||||
"value": "'"$TRAVIS_JOB_NAME"'",
|
||||
"inline": true
|
||||
},
|
||||
{
|
||||
"name": "Branch/Tag",
|
||||
"value": "'"[\`$TRAVIS_BRANCH\`](https://github.com/$TRAVIS_REPO_SLUG/tree/$TRAVIS_BRANCH)"'",
|
||||
"inline": true
|
||||
}
|
||||
],
|
||||
"timestamp": "'"$TIMESTAMP"'"
|
||||
} ]
|
||||
}'
|
||||
|
||||
(curl --fail --progress-bar -A "TravisCI-Webhook" -H Content-Type:application/json -H X-Author:k3rn31p4nic#8383 -d "$WEBHOOK_DATA" "$2" \
|
||||
&& echo -e "\\n[Webhook]: Successfully sent the webhook.") || echo -e "\\n[Webhook]: Unable to send webhook."
|
55
.github/workflows/build.yml
vendored
55
.github/workflows/build.yml
vendored
|
@ -21,7 +21,12 @@ jobs:
|
|||
|
||||
- name: Build
|
||||
run: .ci/linux/run-container.sh 6
|
||||
|
||||
|
||||
- uses: sarisia/actions-status-discord@v1
|
||||
if: always()
|
||||
with:
|
||||
webhook: ${{ secrets.WEBHOOK_URL }}
|
||||
|
||||
linux_clang8:
|
||||
name: "Linux Clang8"
|
||||
runs-on: ubuntu-18.04
|
||||
|
@ -41,11 +46,19 @@ jobs:
|
|||
- name: Build
|
||||
run: .ci/linux/run-container.sh 8
|
||||
|
||||
- name: Upload
|
||||
- name: Upload Github
|
||||
uses: kittaakos/upload-artifact-as-is@v0
|
||||
with:
|
||||
path: upload/
|
||||
|
||||
|
||||
- name: Upload Builds
|
||||
run: .ci/deploy.sh ${{ secrets.DEPLOY_KEY }} upload/*
|
||||
|
||||
- uses: sarisia/actions-status-discord@v1
|
||||
if: always()
|
||||
with:
|
||||
webhook: ${{ secrets.WEBHOOK_URL }}
|
||||
|
||||
android:
|
||||
name: "Android"
|
||||
runs-on: ubuntu-18.04
|
||||
|
@ -64,12 +77,23 @@ jobs:
|
|||
|
||||
- name: Build
|
||||
run: .ci/android/run-container.sh
|
||||
env:
|
||||
KEYSTORE_KEY: ${{ secrets.KEYSTORE_KEY }}
|
||||
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
|
||||
|
||||
- name: Upload
|
||||
- name: Upload Github
|
||||
uses: kittaakos/upload-artifact-as-is@v0
|
||||
with:
|
||||
with:
|
||||
path: upload/
|
||||
|
||||
|
||||
- name: Upload Builds
|
||||
run: .ci/deploy.sh ${{ secrets.DEPLOY_KEY }} upload/*
|
||||
|
||||
- uses: sarisia/actions-status-discord@v1
|
||||
if: always()
|
||||
with:
|
||||
webhook: ${{ secrets.WEBHOOK_URL }}
|
||||
|
||||
macos:
|
||||
name: "macOS"
|
||||
runs-on: macOS-10.15
|
||||
|
@ -86,15 +110,26 @@ jobs:
|
|||
key: ${{ runner.os }}-ccache-${{ github.sha }}
|
||||
restore-keys: ${{ runner.os }}-ccache-
|
||||
|
||||
- uses: maxim-lobanov/setup-xcode@v1
|
||||
with:
|
||||
xcode-version: '11.7'
|
||||
|
||||
- name: Install
|
||||
run: .ci/macos/install-dependencies.sh
|
||||
|
||||
- name: Build
|
||||
run: .ci/macos/build.sh
|
||||
|
||||
- name: Upload
|
||||
|
||||
- name: Upload Github
|
||||
uses: kittaakos/upload-artifact-as-is@v0
|
||||
with:
|
||||
with:
|
||||
path: upload/
|
||||
|
||||
|
||||
- name: Upload Builds
|
||||
run: .ci/deploy.sh ${{ secrets.DEPLOY_KEY }} upload/*
|
||||
|
||||
- uses: sarisia/actions-status-discord@v1
|
||||
if: always()
|
||||
with:
|
||||
webhook: ${{ secrets.WEBHOOK_URL }}
|
||||
# TODO: Add Windows
|
51
.travis.yml
51
.travis.yml
|
@ -1,51 +0,0 @@
|
|||
language: cpp
|
||||
cache: ccache
|
||||
git:
|
||||
depth: 1
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- name: Linux Clang6
|
||||
env: SKIP_DEPLOY=skip
|
||||
os: linux
|
||||
dist: bionic
|
||||
services: docker
|
||||
script: ".ci/linux/run-container.sh 6"
|
||||
- name: Linux Clang8
|
||||
env: SKIP_DEPLOY=skip
|
||||
os: linux
|
||||
dist: bionic
|
||||
services: docker
|
||||
script: ".ci/linux/run-container.sh 8"
|
||||
- name: Linux Clang10
|
||||
os: linux
|
||||
dist: bionic
|
||||
services: docker
|
||||
script: ".ci/linux/run-container.sh 10"
|
||||
- name: Android
|
||||
os: linux
|
||||
dist: bionic
|
||||
services: docker
|
||||
script: ".ci/android/run-container.sh"
|
||||
- name: macOS
|
||||
os: osx
|
||||
osx_image: xcode11
|
||||
install: ".ci/macos/install-dependencies.sh"
|
||||
script: ".ci/macos/build.sh"
|
||||
|
||||
after_success: ".ci/notify-discord.sh success $WEBHOOK_URL"
|
||||
after_failure: ".ci/notify-discord.sh failure $WEBHOOK_URL"
|
||||
|
||||
notifications:
|
||||
email: false
|
||||
|
||||
deploy:
|
||||
provider: script
|
||||
script: ".ci/deploy.sh $DEPLOY_KEY upload/*"
|
||||
skip_cleanup: true
|
||||
on:
|
||||
all_branches: true
|
||||
|
||||
env:
|
||||
global:
|
||||
secure: rMChu2sm/PgLw+74wIIdVxqa6KMTCOUs3h9JePxYwMIQyvs3rdtYe0h0yCwP6q/TlSK0zFWiU09QQ9FaoSknb0AGvPrK+dVnRC/jyEcHqy25FH/58hkttjbQLd3vTBB4kLQ1LIl/vlkXwk54F4NAEKTjQnIZSSQ82eVZ9UNtpddU+R8xa7ZrPpmxUNKw15EjjaZK54QdqQqQAc3dw/h8bwrYUQKeNA/EgM7Zv+ibSDp8aLX/hCkJldlpbC3oa01CitKGqUwIa8y2Z+cHi9tGyj4fJAL7rJvs2hEJN17F7pr7q+xfeQxRAkRTHjMgfqlC9Lt1uCZzljc7IrKSDo03jr7WYeb8Ar5IIeVbNMTK+CJ2ljVQtEardN6OGAvhgsFzCsiQ5AADz4bxqzgtQ2XdkIM+1N9j6nbTxK4B14veM0J1/IrMO/TzV/lZ2GcHqrxiSlj+NBu68ov/i6GvyCqOQ/5H6MVybKyFWIr9i4N5R6Vp+1eugRzo7lsA7NesZeW7Y4Kz5g0rNoalP/GEmVc549wpU9eHFJAhcjiYJF0lPdJPsmZnlNXa+LS1oJFC6972+fK0GSru5fX8qlJALG0kSpygiZR8dq/q1pEVRKtIz1uvIOY526GqEeIfch39Bp0hMCqhJ/AQfXTSzFTwJtnCo0lZO7lNPifwkJ8PHn1WTLI=
|
|
@ -44,9 +44,9 @@ Full list: [Avocado Builds](https://avocado-builds.czekanski.info)
|
|||
|
||||
Build | Status | Download
|
||||
--------|--------|---------
|
||||
Linux | [![Build Status](https://avocado-builds.czekanski.info/status/linux64)](https://travis-ci.org/JaCzekanski/Avocado) | [develop](https://avocado-builds.czekanski.info/latest/linux64)
|
||||
macOS | [![Build Status](https://avocado-builds.czekanski.info/status/macos)](https://travis-ci.org/JaCzekanski/Avocado) | [develop](https://avocado-builds.czekanski.info/latest/macos)
|
||||
Android | [![Build Status](https://avocado-builds.czekanski.info/status/android)](https://travis-ci.org/JaCzekanski/Avocado) | [develop](https://avocado-builds.czekanski.info/latest/android)
|
||||
Linux | [![Build Status](https://avocado-builds.czekanski.info/status/linux64)](https://github.com/JaCzekanski/Avocado/actions) | [develop](https://avocado-builds.czekanski.info/latest/linux64)
|
||||
macOS | [![Build Status](https://avocado-builds.czekanski.info/status/macos)](https://github.com/JaCzekanski/Avocado/actions) | [develop](https://avocado-builds.czekanski.info/latest/macos)
|
||||
Android | [![Build Status](https://avocado-builds.czekanski.info/status/android)](https://github.com/JaCzekanski/Avocado/actions) | [develop](https://avocado-builds.czekanski.info/latest/android)
|
||||
Windows 64-bit, Visual Studio 2019 | [![Build status](https://avocado-builds.czekanski.info/status/windows64)](https://ci.appveyor.com/project/JaCzekanski/avocado/branch/develop) | **[develop](https://avocado-builds.czekanski.info/latest/windows64)**
|
||||
Windows 32-bit, Visual Studio 2019 | [![Build status](https://avocado-builds.czekanski.info/status/windows32)](https://ci.appveyor.com/project/JaCzekanski/avocado/branch/develop) | [develop](https://avocado-builds.czekanski.info/latest/windows32)
|
||||
Windows 64-bit, Visual Studio 2017 | [![Build status](https://ci.appveyor.com/api/projects/status/h1cs3bj1vhskjxgx/branch/develop?svg=true)](https://ci.appveyor.com/project/JaCzekanski/avocado/branch/develop) |
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
apply plugin: 'com.android.application'
|
||||
|
||||
def signingPassword = System.getenv("keystore_password")
|
||||
def signingPassword = System.getenv("KEYSTORE_PASSWORD")
|
||||
def signingEnabled = signingPassword != null
|
||||
println "App signing: $signingEnabled"
|
||||
|
||||
|
|
Binary file not shown.
BIN
android/avocado.keystore.gpg
Normal file
BIN
android/avocado.keystore.gpg
Normal file
Binary file not shown.
35
main.yml
35
main.yml
|
@ -1,35 +0,0 @@
|
|||
name: CI
|
||||
|
||||
on: [push]
|
||||
|
||||
jobs:
|
||||
linux_clang6:
|
||||
name: "Linux Clang6"
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- run: ./.travis/linux/run-container.sh 6
|
||||
|
||||
linux_clang8:
|
||||
name: "Linux Clang8"
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- run: ./.travis/linux/run-container.sh 8
|
||||
|
||||
android:
|
||||
name: "Android"
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- run: ./.travis/android/run-container.sh
|
||||
|
||||
macos:
|
||||
name: "macOS"
|
||||
runs-on: macOS-10.14
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- run: ./.travis/macos/install-dependencies.sh
|
||||
- run: ./.travis/macos/build.sh
|
||||
|
||||
# TODO: Add Windows
|
Loading…
Reference in a new issue