Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[infra] Add new conan remote and use pre-built symengine package (#217)
- Loading branch information
Showing
9 changed files
with
215 additions
and
20 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Standardize line endings across platforms. | ||
# This ensures that conan recipe hashes match. | ||
* text eol=lf | ||
|
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,164 @@ | ||
name: build symengine | ||
on: | ||
push: | ||
branches: | ||
- develop | ||
pull_request: | ||
branches: | ||
- develop | ||
jobs: | ||
changes: | ||
runs-on: ubuntu-20.04 | ||
outputs: | ||
recipes_symengine: ${{ steps.filter.outputs.recipes_symengine }} | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- uses: dorny/paths-filter@v2 | ||
id: filter | ||
with: | ||
base: ${{ github.ref }} | ||
filters: | | ||
recipes_symengine: | ||
- 'recipes/symengine/**' | ||
linux: | ||
name: build symengine (linux) | ||
needs: changes | ||
if: needs.changes.outputs.recipes_symengine == 'true' | ||
runs-on: ubuntu-20.04 | ||
strategy: | ||
matrix: | ||
build_type: ['Release', 'Debug'] | ||
shared: ['True', 'False'] | ||
env: | ||
CC: gcc-10 | ||
CXX: g++-10 | ||
CONAN_REVISIONS_ENABLED: 1 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: install conan | ||
run: pip install conan | ||
- name: create profile | ||
run: | | ||
conan profile new tket --detect | ||
conan profile update settings.compiler.libcxx=libstdc++11 tket | ||
- name: build symengine | ||
run: conan create --profile=tket -s build_type=${{ matrix.build_type }} -o symengine:shared=${{ matrix.shared }} recipes/symengine tket/stable | ||
- name: add remote | ||
run: conan remote add tket-conan https://tket.jfrog.io/artifactory/api/conan/tket-conan | ||
- name: authenticate to repository | ||
run: conan user -p ${{ secrets.JFROG_ARTIFACTORY_TOKEN_1 }} -r tket-conan ${{ secrets.JFROG_ARTIFACTORY_USER_1 }} | ||
- name: get version | ||
run: | | ||
symengine_ver=$(conan inspect --raw version recipes/symengine/) | ||
echo "SYMENGINE_VER=${symengine_ver}" >> $GITHUB_ENV | ||
- name: upload package (dry run) | ||
if: github.event_name == 'pull_request' | ||
run: conan upload symengine/${SYMENGINE_VER}@tket/stable --all -r=tket-conan --skip-upload | ||
- name: upload package | ||
if: github.event_name == 'push' | ||
run: conan upload symengine/${SYMENGINE_VER}@tket/stable --all -r=tket-conan | ||
macos: | ||
name: build symengine (macos) | ||
needs: changes | ||
if: needs.changes.outputs.recipes_symengine == 'true' | ||
runs-on: macos-11 | ||
strategy: | ||
matrix: | ||
build_type: ['Release', 'Debug'] | ||
shared: ['True', 'False'] | ||
env: | ||
CONAN_REVISIONS_ENABLED: 1 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Set up Python 3.9 | ||
uses: actions/setup-python@v2 | ||
with: | ||
python-version: '3.9' | ||
- name: install conan | ||
run: pip install conan | ||
- name: create profile | ||
run: conan profile new tket --detect | ||
- name: install boost | ||
run: conan install --profile=tket -s build_type=${{ matrix.build_type }} boost/1.78.0@ --build=missing | ||
- name: build symengine | ||
run: conan create --profile=tket -s build_type=${{ matrix.build_type }} -o symengine:shared=${{ matrix.shared }} recipes/symengine tket/stable | ||
- name: add remote | ||
run: conan remote add tket-conan https://tket.jfrog.io/artifactory/api/conan/tket-conan | ||
- name: authenticate to repository | ||
run: conan user -p ${{ secrets.JFROG_ARTIFACTORY_TOKEN_1 }} -r tket-conan ${{ secrets.JFROG_ARTIFACTORY_USER_1 }} | ||
- name: get version | ||
run: | | ||
symengine_ver=$(conan inspect --raw version recipes/symengine/) | ||
echo "SYMENGINE_VER=${symengine_ver}" >> $GITHUB_ENV | ||
- name: upload package (dry run) | ||
if: github.event_name == 'pull_request' | ||
run: conan upload symengine/${SYMENGINE_VER}@tket/stable --all -r=tket-conan --skip-upload | ||
- name: upload package | ||
if: github.event_name == 'push' | ||
run: conan upload symengine/${SYMENGINE_VER}@tket/stable --all -r=tket-conan | ||
macos-m1: | ||
name: build symengine (macos-m1) | ||
needs: changes | ||
if: needs.changes.outputs.recipes_symengine == 'true' | ||
runs-on: [self-hosted, macos, M1] | ||
strategy: | ||
matrix: | ||
build_type: ['Release', 'Debug'] | ||
shared: ['True', 'False'] | ||
env: | ||
CONAN_REVISIONS_ENABLED: 1 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: install conan | ||
run: pip install -U conan | ||
- name: create profile | ||
run: conan profile new tket --detect --force | ||
- name: build symengine | ||
run: conan create --profile=tket -s build_type=${{ matrix.build_type }} -o symengine:shared=${{ matrix.shared }} recipes/symengine tket/stable | ||
- name: add remote | ||
run: conan remote add tket-conan https://tket.jfrog.io/artifactory/api/conan/tket-conan --force | ||
- name: authenticate to repository | ||
run: conan user -p ${{ secrets.JFROG_ARTIFACTORY_TOKEN_1 }} -r tket-conan ${{ secrets.JFROG_ARTIFACTORY_USER_1 }} | ||
- name: get version | ||
run: | | ||
symengine_ver=$(conan inspect --raw version recipes/symengine/) | ||
echo "SYMENGINE_VER=${symengine_ver}" >> $GITHUB_ENV | ||
- name: upload package (dry run) | ||
if: github.event_name == 'pull_request' | ||
run: conan upload symengine/${SYMENGINE_VER}@tket/stable --all -r=tket-conan --skip-upload | ||
- name: upload package | ||
if: github.event_name == 'push' | ||
run: conan upload symengine/${SYMENGINE_VER}@tket/stable --all -r=tket-conan | ||
windows: | ||
name: build symengine (windows) | ||
needs: changes | ||
if: needs.changes.outputs.recipes_symengine == 'true' | ||
runs-on: windows-2019 | ||
strategy: | ||
matrix: | ||
build_type: ['Release', 'Debug'] | ||
shared: ['True', 'False'] | ||
env: | ||
CONAN_REVISIONS_ENABLED: 1 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: install conan | ||
run: pip install conan | ||
- name: create profile | ||
run: conan profile new tket --detect | ||
- name: build symengine | ||
run: conan create --profile=tket -s build_type=${{ matrix.build_type }} -o symengine:shared=${{ matrix.shared }} recipes/symengine tket/stable | ||
- name: add remote | ||
run: conan remote add tket-conan https://tket.jfrog.io/artifactory/api/conan/tket-conan | ||
- name: authenticate to repository | ||
run: conan user -p ${{ secrets.JFROG_ARTIFACTORY_TOKEN_1 }} -r tket-conan ${{ secrets.JFROG_ARTIFACTORY_USER_1 }} | ||
- name: get version | ||
run: | | ||
$symengine_ver = conan inspect --raw version recipes/symengine/ | ||
echo "SYMENGINE_VER=${symengine_ver}" >> $env:GITHUB_ENV | ||
- name: upload package (dry run) | ||
if: github.event_name == 'pull_request' | ||
run: conan upload symengine/${{ env.SYMENGINE_VER }}@tket/stable --all -r=tket-conan --skip-upload | ||
- name: upload package | ||
if: github.event_name == 'push' | ||
run: conan upload symengine/${{ env.SYMENGINE_VER }}@tket/stable --all -r=tket-conan |
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
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
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
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
Oops, something went wrong.