aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/.github/workflows/basic.yml
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2021-01-18 02:06:16 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2021-01-18 02:06:16 +0300
commit37b051e99fc6b0706f5dc4b2f01dbbbb9b96355a (patch)
treec90f892a4272839a3f90b41319596f5970b65afb /.github/workflows/basic.yml
parentworkflows: mask the less interesting ones (diff)
downloadcmake-common-37b051e99fc6b0706f5dc4b2f01dbbbb9b96355a.tar.gz
cmake-common-37b051e99fc6b0706f5dc4b2f01dbbbb9b96355a.zip
workflows: add "Basic usage"
Diffstat (limited to '.github/workflows/basic.yml')
-rw-r--r--.github/workflows/basic.yml72
1 files changed, 72 insertions, 0 deletions
diff --git a/.github/workflows/basic.yml b/.github/workflows/basic.yml
new file mode 100644
index 0000000..1d49a80
--- /dev/null
+++ b/.github/workflows/basic.yml
@@ -0,0 +1,72 @@
+name: Basic usage
+
+on:
+ push:
+ branches-ignore:
+ - travis
+ - appveyor
+ pull_request:
+ schedule:
+ # Weekly, at 5:30 AM on Saturday (somewhat randomly chosen).
+ - cron: '30 5 * * 6'
+ workflow_dispatch:
+
+jobs:
+ build:
+ strategy:
+ matrix:
+ os: [ubuntu-18.04, windows-2019]
+
+ include:
+ # Prettier run names.
+ - {os: windows-2019, name: VS 2019}
+ - {os: ubuntu-18.04, name: Ubuntu}
+
+ runs-on: '${{ matrix.os }}'
+
+ name: '${{ matrix.name }}'
+
+ defaults:
+ run:
+ shell: pwsh
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: '3.x'
+
+ - name: Build Boost
+ run: |
+ python -m project.boost.download 1.72.0
+ python -m project.boost.build -- boost_1_72_0 --with-filesystem
+
+ - name: Build example project
+ run: |
+ $src_dir = Join-Path examples boost
+ python -m project.cmake.build --boost boost_1_72_0 --install install -- $src_dir
+
+ - name: Run example project
+ run: |
+ $foo_path = Join-Path (Get-Location).Path install bin foo
+ if ('${{ runner.os }}' -eq 'Windows') {
+ $foo_path += '.exe'
+ }
+
+ $relative = 'test.txt'
+ $absolute = Join-Path (Get-Location).Path $relative
+
+ $actual = & $foo_path $relative
+ echo 'Actual output:'
+ echo $actual
+
+ $expected = $foo_path,$absolute
+ echo 'Expected output:'
+ echo $expected
+
+ if (Compare-Object $actual $expected -CaseSensitive) {
+ throw 'Unexpected output'
+ }