[CI] Cache for actions

This commit is contained in:
Yunfan Li
2024-06-10 00:43:21 +08:00
parent 6b29180340
commit 53123a88ee
3 changed files with 49 additions and 68 deletions

View File

@@ -31,70 +31,45 @@ jobs:
name: ${{ matrix.os }}-${{ matrix.cpp_compiler }} name: ${{ matrix.os }}-${{ matrix.cpp_compiler }}
steps: steps:
- name: Checkout AzerothCore - name: Checkout AzerothCore
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: 'liyunfan1223/azerothcore-wotlk' repository: 'liyunfan1223/azerothcore-wotlk'
ref: 'Playerbot' ref: 'Playerbot'
- name: Set reusable strings - name: Set reusable strings
# Turn repeated input strings (such as the build output directory) into step outputs. These step outputs can be used throughout the workflow file. id: strings
id: strings shell: bash
shell: bash run: |
run: | echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
- name: Checkout Playerbot Module
# - name: Clone Playerbot Module uses: actions/checkout@v3
# run: git clone --depth=1 --branch=master https://github.com/liyunfan1223/mod-playerbots.git modules/mod-playerbots with:
repository: 'liyunfan1223/mod-playerbots'
- name: Checkout Playerbot Module path: 'modules/mod-playerbots'
uses: actions/checkout@v3
with:
repository: 'liyunfan1223/mod-playerbots'
path: 'modules/mod-playerbots'
- name: Install Requirements
run: sudo apt-get update && sudo apt-get install git cmake make gcc g++ clang libmysqlclient-dev libssl-dev libbz2-dev libreadline-dev libncurses-dev mysql-server libboost-all-dev
# - name: Cache - name: Cache
# uses: actions/cache@v3 uses: actions/cache@v3
# with: with:
# path: var/ccache path: |
# key: ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.modules }}-modules:${{ github.ref }}:${{ github.sha }} /var/cache/apt
# restore-keys: | /var/lib/apt
# ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.modules }}-modules:${{ github.ref }} key: ccache:${{ matrix.os }}:${{ github.ref }}:${{ github.sha }}
# ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.modules }}-modules restore-keys: |
ccache:${{ matrix.os }}:${{ github.ref }}
# - name: Configure OS ccache:${{ matrix.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: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: >
cmake -B ${{ steps.strings.outputs.build-output-dir }}
-DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }}
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }}
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
-S ${{ github.workspace }}
- name: Build - name: Install Requirements
# Build your program with the given configuration. Note that --config is needed because the default Windows generator is a multi-config generator (Visual Studio generator). run: sudo apt-get update && sudo apt-get install git cmake make gcc g++ clang libmysqlclient-dev libssl-dev libbz2-dev libreadline-dev libncurses-dev mysql-server libboost-all-dev
run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }}
# - name: Test - name: Configure CMake
# working-directory: ${{ steps.strings.outputs.build-output-dir }} run: >
# # Execute tests defined by the CMake configuration. Note that --build-config is needed because the default Windows generator is a multi-config generator (Visual Studio generator). cmake -B ${{ steps.strings.outputs.build-output-dir }}
# # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }}
# run: ctest --build-config ${{ matrix.build_type }} -DCMAKE_C_COMPILER=${{ matrix.c_compiler }}
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
-S ${{ github.workspace }}
- name: Build
run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }}

View File

@@ -5,9 +5,9 @@ on:
pull_request: pull_request:
branches: [ "master" ] branches: [ "master" ]
concurrency: # concurrency:
group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }}) # group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
cancel-in-progress: true # cancel-in-progress: true
jobs: jobs:
macos-build: macos-build:

View File

@@ -26,8 +26,14 @@ jobs:
with: with:
repository: 'liyunfan1223/mod-playerbots' repository: 'liyunfan1223/mod-playerbots'
path: 'modules/mod-playerbots' path: 'modules/mod-playerbots'
- name: ccache - name: Cache
uses: hendrikmuhs/ccache-action@v1.2.9 uses: actions/cache@v3
with:
path: C:\ProgramData\chocolatey\cache
key: ccache:${{ matrix.os }}:${{ github.ref }}:${{ github.sha }}
restore-keys: |
ccache:${{ matrix.os }}:${{ github.ref }}
ccache:${{ matrix.os }}
- name: Configure OS - name: Configure OS
shell: bash shell: bash
env: env: