Collection of Actions used by the Astrorama projects.
Extracts the name and version of an Elements project.
- Inputs: None
- Outputs:
project
Project nameversion
Project version
Example:
steps:
...
- id: project-version
uses: astrorama/actions/elements-project@master
...
- run: |
echo ${{ steps.project-version.outputs.project }}
echo ${{ steps.project-version.outputs.version }}
Activate and install the dependencies for an Elements project.
- Inputs:
dependency-list
Path to a text file with the list of dependencies (as rpm names, installed withyum
)python-dependency-list
Path to a text file with the list of python dependencies (as rpm names without thepython-
prefix. The action will installpython3-*
orpython-*
depending on the platform
- Outputs: None
Example dependency list:
boost-devel
log4cpp-devel
doxygen
CCfits-devel
graphviz
Example python dependency list:
numpy
pytest
sphinx
cmake make gcc-c++ rpm-build
are always installed, as they are dependencies
of Elements itself.
Example of usage:
steps:
...
- name: Install dependencies
uses: astrorama/actions/setup-dependencies@master
with:
dependency-list: .github/workflows/dependencies.txt
python-dependency-list: .github/workflows/dependencies-python.txt
Common logic to build rpms using Elements
- Inputs:
build-dir
Directory for the build. Defaults tobuild
- Outputs:
rpm-dir
Path to the directory where the rpms are storedsrpm-dir
Path to the directory where the source rpms are stored
Example:
steps:
...
- name: Build
id: build
uses: astrorama/actions/elements-build-rpm@master
...
- uses: actions/upload-artifact@v2
with:
name: "my-artifact"
path: ${{ steps.build.outputs.rpm-dir }}/*.rpm
retention-days: 15