latest sources commit
This commit is contained in:
106
.github/workflows/add-to-project.yml
vendored
Normal file
106
.github/workflows/add-to-project.yml
vendored
Normal file
@@ -0,0 +1,106 @@
|
||||
name: Auto Assign to Project(s)
|
||||
|
||||
on:
|
||||
issues:
|
||||
types: [opened, labeled]
|
||||
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
jobs:
|
||||
assign_one_project:
|
||||
runs-on: ubuntu-latest
|
||||
name: Assign to One Project
|
||||
steps:
|
||||
|
||||
- name: Assign issues with `ChromieCraft Generic` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, 'ChromieCraft Generic')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/20'
|
||||
|
||||
- name: Assign issues with `1-19` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '1-19')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/14'
|
||||
|
||||
- name: Assign issues with `20-29` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '20-29')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/17'
|
||||
|
||||
- name: Assign issues with `30-39` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '30-39')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/23'
|
||||
|
||||
- name: Assign issues with `40-49` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '40-49')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/24'
|
||||
|
||||
- name: Assign issues with `50-59` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '50-59')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/25'
|
||||
|
||||
- name: Assign issues with `60` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '60')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/22'
|
||||
|
||||
- name: Assign issues with `61-64` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '61-64')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/32'
|
||||
|
||||
- name: Assign issues with `65-69` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '65-69')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/36'
|
||||
|
||||
- name: Assign issues with `70` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '70')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/26'
|
||||
|
||||
- name: Assign issues with `71-74` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '71-74')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/33'
|
||||
|
||||
- name: Assign issues with `75-79` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '75-79')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/37'
|
||||
|
||||
- name: Assign issues with `80` label to their project
|
||||
uses: srggrs/assign-one-project-github-action@1.2.1
|
||||
if: |
|
||||
contains(github.event.issue.labels.*.name, '80')
|
||||
with:
|
||||
project: 'https://github.com/azerothcore/azerothcore-wotlk/projects/38'
|
||||
|
||||
49
.github/workflows/build_dbimport.yml
vendored
Normal file
49
.github/workflows/build_dbimport.yml
vendored
Normal file
@@ -0,0 +1,49 @@
|
||||
name: build-db
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master' # only default branch
|
||||
pull_request:
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# the result of the matrix will be the combination of all attributes, so we get os*compiler*modules builds
|
||||
os: [ubuntu-20.04]
|
||||
compiler: [clang]
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.compiler }}
|
||||
env:
|
||||
COMPILER: ${{ matrix.compiler }}
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
env:
|
||||
cache-name: cache-db
|
||||
with:
|
||||
path: var/ccache
|
||||
key: ${{ env.cache-name }}-${{ matrix.os }}-${{ matrix.compiler }}-${{ github.ref }}-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ env.cache-name }}-${{ matrix.os }}-${{ matrix.compiler }}-${{ github.ref }}-
|
||||
${{ env.cache-name }}-${{ matrix.os }}-${{ matrix.compiler }}-
|
||||
${{ env.cache-name }}-${{ matrix.os }}-
|
||||
- name: Configure OS
|
||||
run: source ./acore.sh install-deps
|
||||
env:
|
||||
CONTINUOUS_INTEGRATION: true
|
||||
- name: Create conf/config.sh
|
||||
run: source ./apps/ci/ci-conf-db.sh
|
||||
- name: Build
|
||||
run: source ./apps/ci/ci-compile.sh
|
||||
- name: Process pending sql
|
||||
run: bash bin/acore-db-pendings
|
||||
- name: Dry run
|
||||
run: source ./apps/ci/ci-dry-run.sh dbimport
|
||||
12
.github/workflows/check_pending_sql.yml
vendored
Normal file
12
.github/workflows/check_pending_sql.yml
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
name: Check pending SQL
|
||||
on:
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
check-pending-sql:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Check pending SQL
|
||||
run: source ./apps/ci/ci-pending.sh
|
||||
17
.github/workflows/codestyle.yml
vendored
Normal file
17
.github/workflows/codestyle.yml
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
name: check-codestyle
|
||||
on:
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
check-codestyle:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-20.04]
|
||||
runs-on: ${{ matrix.os }}
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
name: check codestyle
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Check core codestyle
|
||||
run: source ./apps/ci/ci-codestyle.sh
|
||||
52
.github/workflows/core_build.yml
vendored
Normal file
52
.github/workflows/core_build.yml
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
name: main
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# the result of the matrix will be the combination of all attributes, so we get os*compiler builds
|
||||
os: [ubuntu-20.04]
|
||||
compiler: [clang]
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}-${{ matrix.compiler }}
|
||||
env:
|
||||
COMPILER: ${{ matrix.compiler }}
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: var/ccache
|
||||
key: ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ github.ref }}:${{ github.sha }}
|
||||
restore-keys: |
|
||||
ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ github.ref }}
|
||||
ccache:${{ matrix.os }}:${{ matrix.compiler }}
|
||||
- name: Configure OS
|
||||
run: source ./acore.sh install-deps
|
||||
env:
|
||||
CONTINUOUS_INTEGRATION: true
|
||||
- name: Create conf/config.sh
|
||||
run: source ./apps/ci/ci-conf-core.sh
|
||||
- name: Process pending sql
|
||||
run: bash bin/acore-db-pendings
|
||||
- name: Build
|
||||
run: source ./apps/ci/ci-compile.sh
|
||||
- name: Dry run authserver
|
||||
run: source ./apps/ci/ci-dry-run.sh authserver
|
||||
- name: Dry run worldserver
|
||||
run: source ./apps/ci/ci-dry-run.sh worldserver
|
||||
- name: Check startup errors
|
||||
run: source ./apps/ci/ci-error-check.sh
|
||||
- name: Run unit tests
|
||||
run: source ./apps/ci/ci-run-unit-tests.sh
|
||||
69
.github/workflows/core_matrix_build.yml
vendored
Normal file
69
.github/workflows/core_matrix_build.yml
vendored
Normal file
@@ -0,0 +1,69 @@
|
||||
name: core
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
types: ['labeled', 'opened', 'synchronize', 'reopened']
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# the result of the matrix will be the combination of all attributes, so we get os*compiler builds
|
||||
include:
|
||||
- os: ubuntu-20.04
|
||||
compiler: clang12
|
||||
- os: ubuntu-20.04
|
||||
compiler: clang11
|
||||
- os: ubuntu-20.04
|
||||
compiler: gcc # default in 20.04 is gcc 9
|
||||
- os: ubuntu-20.04
|
||||
compiler: gcc10
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}-${{ matrix.compiler }}
|
||||
env:
|
||||
COMPILER: ${{ matrix.compiler }}
|
||||
if: |
|
||||
github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
&& !github.event.pull_request.draft
|
||||
&& (
|
||||
github.ref == 'refs/heads/master'
|
||||
|| contains(github.event.pull_request.labels.*.name, 'file-cpp'
|
||||
|| github.event.label.name == 'file-cpp'
|
||||
|| contains(github.event.pull_request.labels.*.name, 'run-build')
|
||||
|| github.event.label.name == 'run-build')
|
||||
)
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: var/ccache
|
||||
key: ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ github.ref }}:${{ github.sha }}
|
||||
restore-keys: |
|
||||
ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ github.ref }}
|
||||
ccache:${{ matrix.os }}:${{ matrix.compiler }}
|
||||
- name: Configure OS
|
||||
run: source ./acore.sh install-deps
|
||||
env:
|
||||
CONTINUOUS_INTEGRATION: true
|
||||
- name: Create conf/config.sh
|
||||
run: source ./apps/ci/ci-conf-core.sh
|
||||
- name: Process pending sql
|
||||
run: bash bin/acore-db-pendings
|
||||
- name: Build
|
||||
run: source ./apps/ci/ci-compile.sh
|
||||
- name: Dry run authserver
|
||||
run: source ./apps/ci/ci-dry-run.sh authserver
|
||||
- name: Dry run worldserver
|
||||
run: source ./apps/ci/ci-dry-run.sh worldserver
|
||||
- name: Check startup errors
|
||||
run: source ./apps/ci/ci-error-check.sh
|
||||
- name: Run unit tests
|
||||
run: source ./apps/ci/ci-run-unit-tests.sh
|
||||
64
.github/workflows/core_modules_build.yml
vendored
Normal file
64
.github/workflows/core_modules_build.yml
vendored
Normal file
@@ -0,0 +1,64 @@
|
||||
name: core-modules-build
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
types: ['labeled', 'opened', 'synchronize', 'reopened']
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build-modules:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# the result of the matrix will be the combination of all attributes, so we get os*compiler*modules builds
|
||||
os: [ubuntu-20.04]
|
||||
compiler: [clang]
|
||||
modules: [with]
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.modules }}-modules
|
||||
env:
|
||||
COMPILER: ${{ matrix.compiler }}
|
||||
if: |
|
||||
github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
&& !github.event.pull_request.draft
|
||||
&& (
|
||||
github.ref == 'refs/heads/master'
|
||||
|| contains(github.event.pull_request.labels.*.name, 'file-cpp'
|
||||
|| github.event.label.name == 'file-cpp'
|
||||
|| contains(github.event.pull_request.labels.*.name, 'run-build')
|
||||
|| github.event.label.name == 'run-build')
|
||||
)
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Checkout modules
|
||||
run: ./apps/ci/ci-install-modules.sh
|
||||
if: matrix.modules == 'with'
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: var/ccache
|
||||
key: ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.modules }}-modules:${{ github.ref }}:${{ github.sha }}
|
||||
restore-keys: |
|
||||
ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.modules }}-modules:${{ github.ref }}
|
||||
ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.modules }}-modules
|
||||
- name: Configure OS
|
||||
run: source ./acore.sh install-deps
|
||||
env:
|
||||
CONTINUOUS_INTEGRATION: true
|
||||
- name: Create conf/config.sh
|
||||
run: source ./apps/ci/ci-conf-core.sh
|
||||
- name: Process pending sql
|
||||
run: bash bin/acore-db-pendings
|
||||
- name: Build
|
||||
run: source ./apps/ci/ci-compile.sh
|
||||
- name: Dry run
|
||||
run: source ./apps/ci/ci-dry-run.sh worldserver
|
||||
- name: Check startup errors
|
||||
run: source ./apps/ci/ci-error-check.sh
|
||||
- name: Run unit tests
|
||||
run: source ./apps/ci/ci-run-unit-tests.sh
|
||||
34
.github/workflows/cpp-check.yml
vendored
Normal file
34
.github/workflows/cpp-check.yml
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
name: cpp-check
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- "master"
|
||||
paths:
|
||||
- src/**
|
||||
- "!README.md"
|
||||
- "!docs/**"
|
||||
pull_request:
|
||||
paths:
|
||||
- src/**
|
||||
- "!README.md"
|
||||
- "!docs/**"
|
||||
|
||||
jobs:
|
||||
cpp-check:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
runs-on: ubuntu-22.04
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
name: cpp check
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: cpp check
|
||||
run: |
|
||||
sudo apt update -y
|
||||
sudo apt install -y cppcheck
|
||||
cppcheck --force --inline-suppr --suppressions-list=./.suppress.cppcheck src/ --output-file=report.txt
|
||||
|
||||
if [ -s report.txt ]; then # if file is not empty
|
||||
cat report.txt
|
||||
exit 1 # let github action fails
|
||||
fi
|
||||
180
.github/workflows/docker_build.yml
vendored
Normal file
180
.github/workflows/docker_build.yml
vendored
Normal file
@@ -0,0 +1,180 @@
|
||||
name: docker-build
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
types: ['labeled', 'opened', 'synchronize', 'reopened']
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
docker-build-n-deploy-dev:
|
||||
strategy:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
os: [ubuntu-20.04]
|
||||
runs-on: ${{ matrix.os }}
|
||||
if: |
|
||||
github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
&& !github.event.pull_request.draft
|
||||
&& (github.ref == 'refs/heads/master' || contains(github.event.pull_request.labels.*.name, 'run-build') || github.event.label.name == 'run-build')
|
||||
env:
|
||||
COMPOSE_DOCKER_CLI_BUILD: 1
|
||||
DOCKER_BUILDKIT: 1
|
||||
|
||||
steps:
|
||||
- name: Extract branch name
|
||||
shell: bash
|
||||
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
|
||||
id: extract_branch
|
||||
|
||||
- name: Configure
|
||||
run: |
|
||||
sudo rm -rf /usr/local/lib/android
|
||||
sudo rm -rf /usr/share/dotnet
|
||||
sudo rm -rf /opt/ghc
|
||||
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
|
||||
docker --version
|
||||
docker compose version
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
# we need the entire history for the ac-dev-server
|
||||
# with:
|
||||
# fetch-depth: 2
|
||||
|
||||
# - name: Set up Docker Buildx
|
||||
# uses: docker/setup-buildx-action@v1
|
||||
|
||||
- name: Login to Docker Hub
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && steps.extract_branch.outputs.branch == 'master'
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
- name: Build Dev
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
env:
|
||||
#DOCKER_IMAGE_TAG: ${{ steps.extract_branch.outputs.branch }}
|
||||
DOCKER_CLIENT_TIMEOUT: 400
|
||||
COMPOSE_HTTP_TIMEOUT: 400
|
||||
run: |
|
||||
export DOCKER_USER_ID=$(id -u)
|
||||
export DOCKER_GROUP_ID=$(id -u)
|
||||
# pull the images first to load the docker cache layers
|
||||
#./acore.sh docker pull
|
||||
./acore.sh docker build
|
||||
output=$(./acore.sh version | grep "AzerothCore Rev. ") && version=${output#"AzerothCore Rev. "}
|
||||
DOCKER_IMAGE_TAG=$version docker compose --profile dev --profile local build
|
||||
|
||||
- name: Deploy Dev
|
||||
#env:
|
||||
# DOCKER_IMAGE_TAG: ${{ steps.extract_branch.outputs.branch }}
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && steps.extract_branch.outputs.branch == 'master'
|
||||
run: |
|
||||
docker compose --profile dev --profile local push
|
||||
output=$(./acore.sh version | grep "AzerothCore Rev. ") && version=${output#"AzerothCore Rev. "}
|
||||
DOCKER_IMAGE_TAG=$version docker compose --profile dev --profile local push
|
||||
|
||||
docker-build-n-deploy-prod:
|
||||
strategy:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
os: [ubuntu-20.04]
|
||||
runs-on: ${{ matrix.os }}
|
||||
if: |
|
||||
github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
&& !github.event.pull_request.draft
|
||||
&& (github.ref == 'refs/heads/master' || contains(github.event.pull_request.labels.*.name, 'run-build') || github.event.label.name == 'run-build')
|
||||
env:
|
||||
COMPOSE_DOCKER_CLI_BUILD: 1
|
||||
DOCKER_BUILDKIT: 1
|
||||
|
||||
steps:
|
||||
- name: Extract branch name
|
||||
shell: bash
|
||||
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
|
||||
id: extract_branch
|
||||
|
||||
- name: Configure
|
||||
run: |
|
||||
sudo rm -rf /usr/local/lib/android
|
||||
sudo rm -rf /usr/share/dotnet
|
||||
sudo rm -rf /opt/ghc
|
||||
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
|
||||
docker --version
|
||||
docker compose version
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
# we need the entire history for the ac-dev-server
|
||||
# with:
|
||||
# fetch-depth: 2
|
||||
|
||||
# - name: Set up Docker Buildx
|
||||
# uses: docker/setup-buildx-action@v1
|
||||
|
||||
- name: Login to Docker Hub
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && steps.extract_branch.outputs.branch == 'master'
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: var/docker/ccache
|
||||
key: ccache:${{ matrix.os }}:clang:without-modules:${{ github.ref }}:${{ github.sha }}
|
||||
restore-keys: |
|
||||
ccache:${{ matrix.os }}:clang:without-modules:${{ github.ref }}
|
||||
ccache:${{ matrix.os }}:clang:without-modules
|
||||
|
||||
- name: Build Production images
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
env:
|
||||
#DOCKER_IMAGE_TAG: ${{ steps.extract_branch.outputs.branch }}
|
||||
DOCKER_CLIENT_TIMEOUT: 220
|
||||
COMPOSE_HTTP_TIMEOUT: 220
|
||||
run: |
|
||||
export DOCKER_USER_ID=$(id -u)
|
||||
export DOCKER_GROUP_ID=$(id -u)
|
||||
# pull the images first to load the docker cache layers
|
||||
#./acore.sh docker prod:pull
|
||||
./acore.sh docker prod:build
|
||||
output=$(./acore.sh version | grep "AzerothCore Rev. ") && version=${output#"AzerothCore Rev. "}
|
||||
DOCKER_IMAGE_TAG=$version ./acore.sh docker prod:build
|
||||
# create the container to allow the copy right after
|
||||
docker compose create ac-build-prod
|
||||
docker compose cp ac-build-prod:/azerothcore/var/ccache var/docker/
|
||||
echo "ccache exported"
|
||||
|
||||
- name: Deploy Production images
|
||||
#env:
|
||||
# DOCKER_IMAGE_TAG: ${{ steps.extract_branch.outputs.branch }}
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && steps.extract_branch.outputs.branch == 'master'
|
||||
run: |
|
||||
docker compose --profile prod push
|
||||
output=$(./acore.sh version | grep "AzerothCore Rev. ") && version=${output#"AzerothCore Rev. "}
|
||||
DOCKER_IMAGE_TAG=$version docker compose --profile prod push
|
||||
|
||||
|
||||
dispatch-acore-docker:
|
||||
needs: [ docker-build-n-deploy-prod , docker-build-n-deploy-dev]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Extract branch name
|
||||
shell: bash
|
||||
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
|
||||
id: extract_branch
|
||||
|
||||
- name: Repository Dispatch
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && steps.extract_branch.outputs.branch == 'master'
|
||||
uses: peter-evans/repository-dispatch@v2
|
||||
with:
|
||||
token: ${{ secrets.ACORE_DOCKER_REPO_ACCESS_TOKEN }}
|
||||
repository: azerothcore/acore-docker
|
||||
event-type: azerothcore-new-images
|
||||
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'
|
||||
49
.github/workflows/import_pending.yml
vendored
Normal file
49
.github/workflows/import_pending.yml
vendored
Normal file
@@ -0,0 +1,49 @@
|
||||
name: import-pending
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
import-pending:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
runs-on: ubuntu-20.04
|
||||
permissions: write-all
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
# If we're fetching all the history in a later step it makes sense to
|
||||
# pre-load it now
|
||||
fetch-depth: 0
|
||||
ref: ${{ github.ref_name }}
|
||||
|
||||
- uses: denoland/setup-deno@v1
|
||||
with:
|
||||
# Specifies latest 1.x
|
||||
deno-version: "~1.0"
|
||||
|
||||
- name: Import and commit pending sql
|
||||
run: |
|
||||
git config --local user.email "github-actions[bot]@users.noreply.github.com"
|
||||
git config --local user.name "github-actions[bot]"
|
||||
# Get the latest changes from git
|
||||
git pull --rebase origin "${{ github.ref_name }}"
|
||||
bash bin/acore-db-pendings
|
||||
deno run --allow-all --unstable apps/ci/ci-pending-changelogs.ts
|
||||
git add -A .
|
||||
git commit -am "chore(DB): import pending files" -m "Referenced commit(s): ${GITHUB_SHA}" || true
|
||||
env:
|
||||
# Noting that the branch name can only be master, as per the event
|
||||
# triggering this action
|
||||
BRANCH: ${{ github.ref_name }}
|
||||
|
||||
- name: Push changes
|
||||
uses: ad-m/github-push-action@master
|
||||
with:
|
||||
github_token: ${{ secrets.AC_GITHUB_TOKEN }}
|
||||
# Noting that the branch name can only be master, as per the event
|
||||
# triggering this action
|
||||
branch: ${{ github.ref_name }}
|
||||
16
.github/workflows/issue-labeler.yml
vendored
Normal file
16
.github/workflows/issue-labeler.yml
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
name: "Issue Labeler"
|
||||
on:
|
||||
issues:
|
||||
types: [opened]
|
||||
|
||||
jobs:
|
||||
issue_labeler:
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
runs-on: ubuntu-latest
|
||||
name: Issue Labeler
|
||||
steps:
|
||||
- name: Issue Labeler
|
||||
id: issue-labeler
|
||||
uses: azerothcore/GitHub-Actions@issue-labeler-1.0.1
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
44
.github/workflows/macos_build.yml
vendored
Normal file
44
.github/workflows/macos_build.yml
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
name: macos-build
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
types: ['labeled', 'opened', 'synchronize', 'reopened']
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
macos-build:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os:
|
||||
- macos-11
|
||||
- macos-12
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}
|
||||
if: |
|
||||
github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
&& !github.event.pull_request.draft
|
||||
&& (github.ref == 'refs/heads/master' || contains(github.event.pull_request.labels.*.name, 'run-build') || github.event.label.name == 'run-build')
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ~/Library/Caches/ccache
|
||||
key: ccache:${{ matrix.os }}:${{ github.ref }}:${{ github.sha }}
|
||||
restore-keys: |
|
||||
ccache:${{ matrix.os }}:${{ github.ref }}
|
||||
ccache:${{ matrix.os }}
|
||||
- name: Install latest bash
|
||||
run: brew install bash
|
||||
- name: Configure OS
|
||||
run: source ./acore.sh install-deps
|
||||
- name: Build
|
||||
run: source ./apps/ci/mac/ci-compile.sh
|
||||
- name: Run unit tests
|
||||
run: source ./apps/ci/ci-run-unit-tests.sh
|
||||
18
.github/workflows/pr_labeler.yml
vendored
Normal file
18
.github/workflows/pr_labeler.yml
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
name: PR Labeler
|
||||
on:
|
||||
- pull_request_target
|
||||
|
||||
jobs:
|
||||
triage:
|
||||
runs-on: ubuntu-20.04
|
||||
permissions: write-all
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: true
|
||||
- uses: actions/labeler@v4
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
configuration-path: .github/labeler.yml
|
||||
sync-labels: true
|
||||
46
.github/workflows/tools_build.yml
vendored
Normal file
46
.github/workflows/tools_build.yml
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
name: tools
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# the result of the matrix will be the combination of all attributes, so we get os*compiler builds
|
||||
os: [ubuntu-20.04]
|
||||
compiler: [clang]
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}-${{ matrix.compiler }}
|
||||
env:
|
||||
COMPILER: ${{ matrix.compiler }}
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
env:
|
||||
cache-name: cache-tools
|
||||
with:
|
||||
path: var/ccache
|
||||
key: ${{ env.cache-name }}-${{ matrix.os }}-${{ matrix.compiler }}-${{ github.ref }}-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ env.cache-name }}-${{ matrix.os }}-${{ matrix.compiler }}-${{ github.ref }}-
|
||||
${{ env.cache-name }}-${{ matrix.os }}-${{ matrix.compiler }}-
|
||||
${{ env.cache-name }}-${{ matrix.os }}-
|
||||
- name: Configure OS
|
||||
run: source ./acore.sh install-deps
|
||||
env:
|
||||
CONTINUOUS_INTEGRATION: true
|
||||
- name: Create conf/config.sh
|
||||
run: source ./apps/ci/ci-conf-tools.sh
|
||||
- name: Build
|
||||
run: source ./apps/ci/ci-compile.sh
|
||||
|
||||
62
.github/workflows/windows_build.yml
vendored
Normal file
62
.github/workflows/windows_build.yml
vendored
Normal file
@@ -0,0 +1,62 @@
|
||||
name: windows-build
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
types: ['labeled', 'opened', 'synchronize', 'reopened']
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
windows-build:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [windows-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}
|
||||
env:
|
||||
BOOST_ROOT: C:\local\boost_1_82_0
|
||||
if: |
|
||||
github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
&& !github.event.pull_request.draft
|
||||
&& (github.ref == 'refs/heads/master' || contains(github.event.pull_request.labels.*.name, 'run-build') || github.event.label.name == 'run-build')
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2.9
|
||||
- name: Configure OS
|
||||
shell: bash
|
||||
env:
|
||||
CONTINUOUS_INTEGRATION: true
|
||||
run: |
|
||||
./acore.sh install-deps
|
||||
- name: Process pending sql
|
||||
shell: bash
|
||||
run: bash bin/acore-db-pendings
|
||||
- name: Build
|
||||
shell: bash
|
||||
run: |
|
||||
export CTOOLS_BUILD=all
|
||||
./acore.sh compiler build
|
||||
- name: Copy dll files
|
||||
shell: bash
|
||||
run: |
|
||||
cp "/c/Program Files/OpenSSL/bin/legacy.dll" "env/dist"
|
||||
- name: Dry run authserver
|
||||
shell: bash
|
||||
run: |
|
||||
source ./apps/ci/ci-gen-server-conf-files.sh "authserver" "configs" "."
|
||||
cd env/dist
|
||||
./authserver -dry-run
|
||||
- name: Dry run worldserver
|
||||
shell: bash
|
||||
run: |
|
||||
source ./apps/ci/ci-gen-server-conf-files.sh "worldserver" "configs" "."
|
||||
cd env/dist
|
||||
./worldserver -dry-run
|
||||
- name: Stop MySQL
|
||||
run: net stop mysql
|
||||
Reference in New Issue
Block a user