CI: Fixes Compile workflow #97
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Compile | |
# Setting an environment variable with the value of a configuration variable. | |
env: | |
INDI_OTHER_WORKDIR: ${{ vars.INDI_OTHER_WORKDIR || 'indicators-other' }} | |
# yamllint disable-line rule:truthy | |
on: | |
pull_request: | |
branches: | |
- 'master' | |
- '*dev*' | |
paths-ignore: | |
- '*.md' | |
- '.git*' | |
push: | |
branches: | |
- 'master' | |
- '*dev*' | |
paths-ignore: | |
- '*.md' | |
- '.git*' | |
workflow_call: | |
jobs: | |
checkout-classes: | |
name: Checkout Classes repo | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
ref: v3.000.2 | |
repository: EA31337/EA31337-classes | |
- name: Uploads source code | |
uses: actions/upload-artifact@v4 | |
with: | |
name: src-classes | |
path: . | |
compile-indicators-other: | |
name: Compile Indicators (Other) | |
uses: EA31337/EA31337-Indicators-Other/.github/workflows/compile.yml@master | |
with: | |
artifact_prefix: io-mt | |
checkout_branch: v1.000 | |
mt4: | |
name: Installs platform (4) | |
uses: EA31337/EA-Tester/.github/workflows/platform-linux.yml@dev | |
with: | |
artifact_name: .mt4 | |
artifact_overwrite: true | |
skip_cleanup: true | |
version: 4 | |
mt5: | |
name: Installs platform (5) | |
uses: EA31337/EA-Tester/.github/workflows/platform-linux.yml@dev | |
with: | |
artifact_name: .mt5 | |
artifact_overwrite: true | |
skip_cleanup: true | |
version: 5 | |
compile: | |
defaults: | |
run: | |
shell: powershell | |
name: Compile | |
needs: [checkout-classes, compile-indicators-other, mt4, mt5] | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: actions/download-artifact@v4 | |
with: | |
name: src-classes | |
path: Include/EA31337-classes | |
- uses: actions/download-artifact@v4 | |
with: | |
pattern: .mt? | |
- name: Enables input mode | |
run: echo '#define __input__' >> config/define.h | |
- uses: actions/download-artifact@v4 | |
with: | |
merge-multiple: true | |
pattern: "*-indicators-ex${{ matrix.version }}" | |
- name: Compile | |
uses: fx31337/mql-compile-action@master | |
with: | |
include: . | |
mt-path: .mt${{ matrix.version }} | |
path: "**/Stg_*.mq${{ matrix.version }}" | |
verbose: true | |
- name: List compiled files | |
run: '(Get-ChildItem -Recurse -Path . -Include *.ex[45]).fullname' | |
- run: Get-Location | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
if-no-files-found: error | |
name: Strategy | |
path: '**/Stg_*.ex[45]' | |
strategy: | |
matrix: | |
version: | |
- 4 | |
- 5 | |
max-parallel: 2 | |
timeout-minutes: 10 | |
cleanup: | |
if: inputs.skip_cleanup != true | |
name: Clean-up | |
needs: [compile] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: geekyeggo/delete-artifact@v5 | |
with: | |
name: .mt? |