-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
moving to maintained action and splitting up linux github actions yml and #131
base: develop
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,159 @@ | ||
name: Linux Debian builds | ||
|
||
on: | ||
# allows us to run workflows manually | ||
workflow_dispatch: | ||
pull_request: | ||
branches: | ||
- develop | ||
paths-ignore: | ||
- '.github/workflows/windows.yml' | ||
- '.github/workflows/unix_mac.yml' | ||
- '.github/workflows/linux_ubuntu.yml' | ||
- '*.md' | ||
- 'LICENSE' | ||
|
||
push: | ||
branches: | ||
- develop | ||
paths-ignore: | ||
- '.github/workflows/windows.yml' | ||
- '.github/workflows/unix_mac.yml' | ||
- '.github/workflows/linux_ubuntu.yml' | ||
- '*.md' | ||
- 'LICENSE' | ||
|
||
release: | ||
types: # This configuration does not affect the page_build event above | ||
- published | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
jobs: | ||
building-plugin: | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
cubit: [2021.5, 2021.11] | ||
os: [debian] | ||
# using a 'string' for version number as the 0 gets rounded away otherwise | ||
os_version: ['10.10'] | ||
|
||
name: 'Cubit ${{ matrix.cubit }} Build for ${{ matrix.os }} ${{ matrix.os_version }} of Svalinn Plugin' | ||
|
||
container: | ||
image: ${{ matrix.os }}:${{ matrix.os_version }} | ||
|
||
steps: | ||
- name: install new git | ||
shell: bash -l {0} | ||
run: | | ||
apt-get update | ||
apt-get install -y software-properties-common curl | ||
apt-get install -y git | ||
- uses: actions/checkout@v2 | ||
|
||
- name: Environment Variables | ||
shell: bash -l {0} | ||
run: | | ||
COREFORM_BASE_URL=https://f002.backblazeb2.com/file/cubit-downloads/Coreform-Cubit/Releases | ||
|
||
if [ "${{ matrix.cubit }}" == "2021.4" ]; then | ||
BASE=Coreform-Cubit-2021.4%2B15017_05893177 | ||
CUBIT_BASE_NAME=Coreform-Cubit-2021.4 | ||
HDF5_PATH=/usr/local/HDF_Group/HDF5/1.12.0 | ||
elif [ "${{ matrix.cubit }}" == "2021.5" ]; then | ||
BASE=Coreform-Cubit-2021.5%2B15962_5043ef39 | ||
CUBIT_BASE_NAME=Coreform-Cubit-2021.5 | ||
HDF5_PATH=/usr/local/HDF_Group/HDF5/1.12.0 | ||
elif [ "${{ matrix.cubit }}" == "2021.11" ]; then | ||
BASE=Coreform-Cubit-2021.11%2B21637_35609873 | ||
CUBIT_BASE_NAME=Coreform-Cubit-2021.11 | ||
HDF5_PATH=/usr/local/HDF_Group/HDF5/1.12.0 | ||
fi | ||
|
||
SUFFIX=Lin64 | ||
EXT=deb | ||
echo "SED=sed" >> $GITHUB_ENV | ||
echo "BUILD_SHARED_LIBS=ON" >> $GITHUB_ENV | ||
echo "BUILD_STATIC_LIBS=OFF" >> $GITHUB_ENV | ||
echo "system=linux" >> $GITHUB_ENV | ||
echo "CUBIT_PATH=/opt/${CUBIT_BASE_NAME}" >> $GITHUB_ENV | ||
echo "COREFORM_BASE_URL=${COREFORM_BASE_URL}/Linux/" >> $GITHUB_ENV | ||
echo "HDF5_PATH=${HDF5_PATH}" >> $GITHUB_ENV | ||
|
||
echo "OS=${{ matrix.os }}" >> $GITHUB_ENV | ||
echo "OS_VERSION=${{ matrix.os_version }}" >> $GITHUB_ENV | ||
echo "CMAKE_ADDITIONAL_FLAGS=-DCMAKE_CXX_FLAGS=-D_GLIBCXX_USE_CXX11_ABI=0" >> $GITHUB_ENV | ||
|
||
echo "CUBIT_PKG=${BASE}-${SUFFIX}.${EXT}" >> $GITHUB_ENV | ||
echo "CUBIT_SDK_PKG=${BASESDK}-${SUFFIX}.tar.gz" >> $GITHUB_ENV | ||
echo "CUBIT_BASE_NAME=${CUBIT_BASE_NAME}" >> $GITHUB_ENV | ||
|
||
echo "CURRENT=$(pwd)" >> $GITHUB_ENV | ||
echo "SCRIPTPATH=$GITHUB_WORKSPACE" >> $GITHUB_ENV | ||
echo "PLUGIN_ABS_PATH=$GITHUB_WORKSPACE/.." >> $GITHUB_ENV | ||
echo "FOLDER_PKG=$GITHUB_WORKSPACE/pkg" >> $GITHUB_ENV | ||
|
||
echo "" >> ${HOME}/.bash_profile | ||
echo "source $GITHUB_WORKSPACE/scripts/unix_share_build.sh" >> $HOME/.bash_profile | ||
|
||
- name: Initial setup | ||
shell: bash -l {0} | ||
run: | | ||
${system}_install_prerequisites | ||
|
||
- name: Downloading packages | ||
shell: bash -l {0} | ||
run: | | ||
mkdir -p $FOLDER_PKG | ||
cd ${FOLDER_PKG} | ||
curl -L ${COREFORM_BASE_URL}${CUBIT_PKG} --output ${CUBIT_PKG} | ||
if [ "${{ matrix.cubit }}" = "17.1.0" ]; then | ||
curl -L ${COREFORM_BASE_URL}${CUBIT_SDK_PKG} --output ${CUBIT_SDK_PKG} | ||
fi | ||
mkdir ${SCRIPTPATH}/release | ||
|
||
- name: Cubit setup | ||
shell: bash -l {0} | ||
run: | | ||
${system}_setup_cubit ${{ matrix.cubit }} | ||
|
||
- name: Build HDF5 | ||
shell: bash -l {0} | ||
run: | | ||
${system}_build_hdf5 | ||
|
||
- name: Build MOAB | ||
shell: bash -l {0} | ||
run: | | ||
build_moab | ||
|
||
- name: Build DAGMC | ||
shell: bash -l {0} | ||
run: | | ||
build_dagmc | ||
|
||
- name: Build plugin | ||
shell: bash -l {0} | ||
run: | | ||
build_plugin | ||
|
||
- name: Prepare package | ||
shell: bash -l {0} | ||
run: | | ||
${system}_build_plugin_pkg ${{ matrix.cubit }} | ||
|
||
- if: github.event_name != 'release' | ||
name: Upload artifact for CI | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: svalinn-plugin_${{ matrix.os }}-${{ matrix.os_version }}_cubit_${{ matrix.cubit }}.tgz | ||
path: ${{ github.workspace }}/release/svalinn-plugin_${{ matrix.os }}-${{ matrix.os_version }}_cubit_${{ matrix.cubit }}.tgz | ||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` | ||
|
||
- name: Upload binaries into the release | ||
uses: softprops/action-gh-release@v1 | ||
if: startsWith(github.ref, 'refs/tags/') | ||
with: | ||
files: ${{ github.workspace }}/release/svalinn-plugin_${{ matrix.os }}-${{ matrix.os_version }}_cubit_${{ matrix.cubit }}.tgz |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
name: Linux builds | ||
name: Linux Ubuntu builds | ||
|
||
on: | ||
# allows us to run workflows manually | ||
|
@@ -9,6 +9,7 @@ on: | |
paths-ignore: | ||
- '.github/workflows/windows.yml' | ||
- '.github/workflows/unix_mac.yml' | ||
- '.github/workflows/linux_debian.yml' | ||
- '*.md' | ||
- 'LICENSE' | ||
|
||
|
@@ -18,6 +19,7 @@ on: | |
paths-ignore: | ||
- '.github/workflows/windows.yml' | ||
- '.github/workflows/unix_mac.yml' | ||
- '.github/workflows/linux_debian.yml' | ||
- '*.md' | ||
- 'LICENSE' | ||
|
||
|
@@ -32,23 +34,18 @@ jobs: | |
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
cubit: [2021.4, 2021.5, 2021.11] | ||
cubit: [2021.5, 2021.11] | ||
os: [ubuntu] | ||
os_version: [20.04, 21.04] | ||
include: | ||
- os: ubuntu | ||
os_version: 18.04 | ||
cubit: 17.1.0 | ||
|
||
- os: debian | ||
os_version: '10.10' # using a 'string' here as the 0 gets rounded away otherwise | ||
cubit: 2021.5 | ||
|
||
- os: debian | ||
os_version: '10.10' # using a 'string' here as the 0 gets rounded away otherwise | ||
cubit: 2021.11 | ||
- os: ubuntu | ||
os_version: 20.04 | ||
cubit: 2021.4 | ||
|
||
|
||
name: 'Cubit ${{ matrix.cubit }} Build for ${{ matrix.os }} ${{ matrix.os_version }} of Svalinn Plugin' | ||
|
||
container: | ||
|
@@ -60,10 +57,8 @@ jobs: | |
run: | | ||
apt-get update | ||
apt-get install -y software-properties-common curl | ||
if [ "${{ matrix.os }}" == "ubuntu" ]; then | ||
add-apt-repository ppa:git-core/ppa | ||
apt-get update | ||
fi | ||
add-apt-repository ppa:git-core/ppa | ||
apt-get update | ||
apt-get install -y git | ||
- uses: actions/checkout@v2 | ||
|
||
|
@@ -171,12 +166,8 @@ jobs: | |
path: ${{ github.workspace }}/release/svalinn-plugin_${{ matrix.os }}-${{ matrix.os_version }}_cubit_${{ matrix.cubit }}.tgz | ||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` | ||
|
||
- if: github.event_name == 'release' | ||
name: Upload binaries into the release | ||
uses: svenstaro/upload-release-action@v2 | ||
- name: Upload binaries into the release | ||
uses: softprops/action-gh-release@v1 | ||
if: startsWith(github.ref, 'refs/tags/') | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is there a substantive reason to change the condition? Why not put the conditional first? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. That is just how the example suggested to do it. I think that the action handles the condition instead of the yml |
||
with: | ||
repo_token: ${{ secrets.GITHUB_TOKEN }} | ||
file: ${{ github.workspace }}/release/svalinn-plugin_${{ matrix.os }}-${{ matrix.os_version }}_cubit_${{ matrix.cubit }}.tgz | ||
asset_name: svalinn-plugin_${{ matrix.os }}-${{ matrix.os_version }}_cubit_${{ matrix.cubit }}.tgz | ||
tag: ${{ github.ref }} | ||
overwrite: true | ||
files: ${{ github.workspace }}/release/svalinn-plugin_${{ matrix.os }}-${{ matrix.os_version }}_cubit_${{ matrix.cubit }}.tgz |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this has now excluded the U21.04 + C2021.4 combination - was that failing before?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it was not failing before. I can't quite figure out why it is failing now.
I think the newer replacements are usually easier to use which I guess is part of the reason they become the preferred option. They also tend to offer the same or better functionality. So perhaps upgrading actions won't be much trouble. This action repo was kind enough to recommend a replacement one.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't quite understand why it no longer works but it seems that U21.04 + C2021.4 was working previously. I can manually upload it to the release of that helps