mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-09 17:31:45 +00:00
100 lines
3.9 KiB
YAML
100 lines
3.9 KiB
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v[0-9].[0-9].[0-9]*'
|
|
|
|
jobs:
|
|
activate:
|
|
if: github.repository == 'IfcOpenShell/IfcOpenShell'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- run: echo ok go
|
|
build:
|
|
needs: activate
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
lfs: true
|
|
-
|
|
name: Update ubuntu
|
|
run: |
|
|
sudo apt update
|
|
sudo apt-get install git cmake gcc g++ libboost1.67-all-dev python3-all-dev swig libpcre3-dev libxml2-dev
|
|
sudo apt-get install liboce-foundation-dev liboce-modeling-dev liboce-ocaf-dev liboce-visualization-dev liboce-ocaf-lite-dev \
|
|
libhdf5-dev
|
|
|
|
- name: Build
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
CHANGELOG_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
run: |
|
|
mkdir build && cd build
|
|
cmake \
|
|
-DCMAKE_INSTALL_PREFIX=$PWD/install/ \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_PREFIX_PATH=/usr \
|
|
-DCMAKE_SYSTEM_PREFIX_PATH=/usr \
|
|
-DBUILD_PACKAGE=On \
|
|
-DOCC_INCLUDE_DIR=/usr/include/oce \
|
|
-DOCC_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu \
|
|
-DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 \
|
|
-DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.8 \
|
|
-DPYTHON_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libpython3.8.so \
|
|
-DCOLLADA_SUPPORT=Off \
|
|
-DLIBXML2_INCLUDE_DIR=/usr/include/libxml2 \
|
|
-DLIBXML2_LIBRARIES=/usr/lib/x86_64-linux-gnu/libxml2.so \
|
|
-DHDF5_INCLUDE_DIR=/usr/include/hdf5/serial \
|
|
../cmake
|
|
make -j $(nproc)
|
|
make install
|
|
- name: Package
|
|
id: package
|
|
run: |
|
|
make package
|
|
echo ::set-output name=tgz::$( ls assets/*.tar.gz | head -n 1 | xargs basename )
|
|
echo ::set-output name=deb::$( ls assets/*.deb | head -n 1 | xargs basename )
|
|
working-directory: build
|
|
env:
|
|
CHANGELOG_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: Release
|
|
id: release
|
|
uses: actions/create-release@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
tag_name: ${{ github.ref }}
|
|
release_name: Release ${{ github.ref }}
|
|
draft: false
|
|
prerelease: true
|
|
body: |
|
|
Changes to this release
|
|
- add github actions support #1306
|
|
- add boost depends to ifcopenshell deb packaging
|
|
- <add more changes here>
|
|
See more details in the documentation
|
|
# body_path: build/CHANGELOG.md
|
|
- name: Upload TGZ
|
|
id: upload-tgz
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
|
|
asset_path: build/assets/${{ steps.package.outputs.tgz }}
|
|
asset_name: ${{ steps.package.outputs.tgz }}
|
|
asset_content_type: application/x-gzip
|
|
- name: Upload DEB
|
|
id: upload-deb
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
|
|
asset_path: build/assets/${{ steps.package.outputs.deb }}
|
|
asset_name: ${{ steps.package.outputs.deb }}
|
|
asset_content_type: application/vnd.debian.binary-package
|