Skip to content

Commit

Permalink
Merge branch 'dev' into f/LinearAero
Browse files Browse the repository at this point in the history
  • Loading branch information
rafmudaf committed Nov 6, 2020
2 parents 881c94c + 44263d7 commit 416ff43
Show file tree
Hide file tree
Showing 44 changed files with 1,292 additions and 864 deletions.
18 changes: 18 additions & 0 deletions .github/actions/cmake-config/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: 'Configure CMake'
description: 'Configure the CMake project'
author: 'Rafael Mudafort https://github.com/rafmudaf'

inputs:
build-type:
description: 'Set the CMake build type: Release (-O3); RelWithDebInfo (-O2 -g); Debug (-g)'
default: 'Release'
additional-flags:
description: 'Additional flags to pass directly to the CMake command'
default: ''

runs:
using: 'composite'
steps:
- run: cmake .. -DCMAKE_BUILD_TYPE=${{ inputs.build-type }} ${{ inputs.additional-flags }}
working-directory: "/openfast/build"
shell: bash
24 changes: 0 additions & 24 deletions .github/actions/compile-and-test/Dockerfile

This file was deleted.

10 changes: 0 additions & 10 deletions .github/actions/compile-and-test/action.yml

This file was deleted.

69 changes: 0 additions & 69 deletions .github/actions/compile-and-test/entrypoint.sh

This file was deleted.

15 changes: 15 additions & 0 deletions .github/actions/compile/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: 'Compile OpenFAST'
description: 'Compile part or all of OpenFAST'
author: 'Rafael Mudafort https://github.com/rafmudaf'

inputs:
build-target:
description: 'Which targets to compile'
default: 'install'

runs:
using: 'composite'
steps:
- run: make -j4 ${{ inputs.build-target }}
working-directory: "/openfast/build"
shell: bash
22 changes: 22 additions & 0 deletions .github/actions/git-update/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: 'Update the existin OpenFAST project in the Docker image'
description: 'Workaround to avoid recompiling every component since the Docker image has the latest "dev" branch precompiled.'
author: 'Rafael Mudafort https://github.com/rafmudaf'

inputs:
repository:
description: 'The GitHub repository that is taking action.'
required: true
ref:
description: 'The branch or tag ref that triggered the action.'
required: true

runs:
using: 'composite'
steps:
- run: |
git config --global user.email "openfast@github_actions.ci"
git config --global user.name "OpenFAST Continuous Integration"
git pull --no-verify https://github.com/${{ inputs.repository }} ${{ inputs.ref }}
git submodule update
working-directory: "/openfast/"
shell: bash
21 changes: 21 additions & 0 deletions .github/actions/tests-gluecode-openfast/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: 'OpenFAST glue code tests'
description: 'Run tests focused on the OpenFAST glue code'
author: 'Rafael Mudafort https://github.com/rafmudaf'
runs:
using: 'composite'
steps:
- run: |
ctest -VV -L linear -E Ideal
ctest -VV -j8 -I 1,1,1,2,3,4,5,6,7,8,10,11,12,13,14,15,17,18,21,22,23,24,25,26,27,28,29
working-directory: "/openfast/build"
shell: bash
# OpenFAST linearization tests
# Dont run these in parallel, copying the case files can fail in a race condition
# Exclude the Ideal_Beam test cases
# - They fail consistently in the Docker container when run on GitHub,
# but pass everywhere else including running the same Docker image locally

# Subset of OpenFAST regression tests; do not run
# - 9, 16 because they're very sensitive
# - 19, 20 because they're too long
9 changes: 9 additions & 0 deletions .github/actions/tests-module-aerodyn/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: 'AeroDyn module tests'
description: 'Run tests specific to the AeroDyn module'
author: 'Rafael Mudafort https://github.com/rafmudaf'
runs:
using: "composite"
steps:
- run: ctest -VV -R fvw_utest
working-directory: "/openfast/build"
shell: bash
11 changes: 11 additions & 0 deletions .github/actions/tests-module-beamdyn/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: 'BeamDyn module tests'
description: 'Run tests specific to the BeamDyn module'
author: 'Rafael Mudafort https://github.com/rafmudaf'
runs:
using: "composite"
steps:
- run: |
ctest -VV -j7 -R bd_
ctest -VV -R beamdyn_utest
working-directory: "/openfast/build"
shell: bash
9 changes: 9 additions & 0 deletions .github/actions/tests-module-hydrodyn/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: 'HydroDyn module tests'
description: 'Run tests specific to the HydroDyn module'
author: 'Rafael Mudafort https://github.com/rafmudaf'
runs:
using: "composite"
steps:
- run: ctest -VV -j7 -hd_
working-directory: "/openfast/build"
shell: bash
9 changes: 9 additions & 0 deletions .github/actions/tests-module-nwtclibrary/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: 'NWTC Library module tests'
description: 'Run tests specific to the NWTC Library module'
author: 'Rafael Mudafort https://github.com/rafmudaf'
runs:
using: "composite"
steps:
- run: ctest -VV -R nwtc_library_utest
working-directory: "/openfast/build"
shell: bash
79 changes: 79 additions & 0 deletions .github/workflows/automated-dev-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@

name: 'Development Pipeline'

on:
push:

pull_request:
types: [opened, labeled] #, assigned]

# runs-on: ${{ matrix.os }}
# strategy:
# matrix:
# os: [macOS-10.14, ubuntu-18.04]

jobs:
build-and-test:

# Do not run if:
# - Branch name contains "docs/"
if: "!contains(github.ref, 'docs/')"

runs-on: ubuntu-latest
container:
image: rafmudaf/openfast-ubuntu:dev
steps:
- name: Checkout
uses: actions/checkout@main
with:
submodules: recursive
- name: Git Update
uses: ./.github/actions/git-update
with:
repository: $GITHUB_REPOSITORY
ref: $GITHUB_REF

- name: Configure CMake
uses: ./.github/actions/cmake-config
with:
build-type: RelWithDebInfo
additional-flags: -DBUILD_TESTING=ON -DCTEST_PLOT_ERRORS=ON

- name: Compile Unit Tests
uses: ./.github/actions/compile
with:
build-target: 'unit_tests'
- name: Compile Drivers
uses: ./.github/actions/compile
with:
build-target: 'beamdyn_driver hydrodyn_driver'
- name: Compile OpenFAST
# if: contains(github.event.head_commit.message, 'Action - Test All') || contains(github.event.pull_request.labels.*.name, 'Action - Test All')
uses: ./.github/actions/compile
with:
build-target: 'install'

- name: 'Run NWTC Library tests'
uses: ./.github/actions/tests-module-nwtclibrary
- name: 'Run AeroDyn tests'
uses: ./.github/actions/tests-module-aerodyn
- name: 'Run BeamDyn tests'
uses: ./.github/actions/tests-module-beamdyn
- name: 'Run OpenFAST tests'
# if: contains(github.event.head_commit.message, 'Action - Test All') || contains(github.event.pull_request.labels.*.name, 'Action - Test All')
uses: ./.github/actions/tests-gluecode-openfast

- name: 'If failure, post test files'
uses: actions/upload-artifact@v2
if: failure()
with:
name: test-results
path: |
build/reg_tests/modules
build/reg_tests/glue-codes/openfast
!build/reg_tests/glue-codes/openfast/5MW_Baseline
!build/reg_tests/glue-codes/openfast/AOC
!build/reg_tests/glue-codes/openfast/AWT27
!build/reg_tests/glue-codes/openfast/SWRT
!build/reg_tests/glue-codes/openfast/UAE_VI
!build/reg_tests/glue-codes/openfast/WP_Baseline
22 changes: 0 additions & 22 deletions .github/workflows/continuous-integration-workflow.yml

This file was deleted.

Binary file modified docs/OtherSupporting/OpenFAST_Algorithms/OpenFAST_Algorithms.pdf
Binary file not shown.
Loading

0 comments on commit 416ff43

Please sign in to comment.