Skip to content

Commit

Permalink
Merge pull request #174 from UO-OACISS/circleci-project-setup
Browse files Browse the repository at this point in the history
Circleci project setup
  • Loading branch information
khuck authored Apr 3, 2023
2 parents 05fc87b + 3e41170 commit d0618f4
Showing 1 changed file with 98 additions and 0 deletions.
98 changes: 98 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# Use the latest 2.1 version of CircleCI pipeline process engine.
# See: https://circleci.com/docs/configuration-reference
version: 2.1
executors:
basic:
docker:
- image: cimg/base:current

# Define a job to be invoked later in a workflow.
# See: https://circleci.com/docs/configuration-reference/#jobs
jobs:
vanilla-job:
# Specify the execution environment. You can specify an image from Docker Hub or use one of our convenience images from CircleCI's Developer Hub.
# See: https://circleci.com/docs/configuration-reference/#executor-job
executor: basic

# Add steps to the job
# See: https://circleci.com/docs/configuration-reference/#steps
steps:
- checkout
- run:
name: Create build directories
command: |
mkdir -p build
- run:
name: "Configure"
command: |
cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo -DAPEX_BUILD_TESTS=TRUE
- run:
name: "Build"
command: |
cmake --build build -j4
- run:
name: "Test"
command: |
ctest --test-dir build
kitchen-sink-job:
# Specify the execution environment. You can specify an image from Docker Hub or use one of our convenience images from CircleCI's Developer Hub.
# See: https://circleci.com/docs/configuration-reference/#executor-job
executor: basic

# Add steps to the job
# See: https://circleci.com/docs/configuration-reference/#steps
steps:
- checkout
- run:
name: Create build directories
command: |
mkdir -p build
- run:
name: "Configure"
command: |
cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo -DAPEX_BUILD_TESTS=TRUE -DAPEX_BUILD_ACTIVEHARMONY=TRUE -DAPEX_WITH_PLUGINS=TRUE -DAPEX_BUILD_BFD=TRUE -DAPEX_BUILD_OTF2=TRUE -DAPEX_BUILD_OMPT=TRUE -DAPEX_WITH_PERFETTO=TRUE -DAPEX_WITH_LM_SENSORS=TRUE -DAPEX_BUILD_EXAMPLES=TRUE
- run:
name: "Build"
command: |
cmake --build build -j4
- run:
name: "Test"
command: |
ctest --test-dir build
cuda-job:
# Specify the execution environment. You can specify an image from Docker Hub or use one of our convenience images from CircleCI's Developer Hub.
# See: https://circleci.com/docs/configuration-reference/#executor-job
machine:
image: ubuntu-2004-cuda-11.4:202110-01
#resource_class: "gpu.nvidia.small"

# Add steps to the job
# See: https://circleci.com/docs/configuration-reference/#steps
steps:
- checkout
- run:
name: Create build directories
command: |
mkdir -p build
- run:
name: "Configure"
command: |
cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo -DAPEX_BUILD_TESTS=TRUE -DAPEX_WITH_CUDA=TRUE -DCMAKE_C_COMPILER=`which nvc` -DCMAKE_CXX_COMPILER=`which nvc++`
- run:
name: "Build"
command: |
cmake --build build -j4
- run:
name: "Test"
command: |
ctest --test-dir build
# Orchestrate jobs using workflows
# See: https://circleci.com/docs/configuration-reference/#workflows
workflows:
build-and-test:
jobs:
- vanilla-job
- kitchen-sink-job
# - cuda-job

0 comments on commit d0618f4

Please sign in to comment.