[Fault MGMT] Support trigger and current values other than doubles #574
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "yamcs-quickstart-e2e" | |
on: | |
workflow_dispatch: | |
pull_request: | |
types: | |
- labeled | |
- opened | |
schedule: | |
- cron: "0 0 * * 1-5" | |
push: | |
branches: | |
- master | |
jobs: | |
yamcs-quickstart-e2e: | |
if: ${{ github.event.label.name == 'pr:e2e:quickstart' }} || ${{ github.event.action == 'opened' }} | |
timeout-minutes: 10 | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
strategy: | |
matrix: | |
yamcs-version: | |
- default | |
- 5.8.3 #viper | |
## disabling until we get confirmation- 5.3.2 #ab | |
openmct-version: | |
- latest | |
- stable | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: "18" | |
- uses: actions/checkout@v3 | |
with: | |
repository: yamcs/quickstart | |
ref: master | |
path: 'quickstart' | |
- name: replace yamcsVersion with matrix param | |
if: matrix.yamcs-version != 'default' | |
run: | | |
cd quickstart | |
mvn -B versions:set-property -Dproperty=yamcsVersion -DnewVersion=${{ matrix.yamcs-version }} | |
- name: trigger make all from docker dir. Orphan and redirect output to docker/makeout.txt | |
run: | | |
cd quickstart/docker | |
touch makeout.txt | |
make all &> makeout.txt & | |
- run: npm install | |
- name: Run build:example based on openmct-version | |
run: | | |
if [ "${{ matrix.openmct-version }}" = "latest" ]; then | |
npm run build:example:master | |
elif [ "${{ matrix.openmct-version }}" = "stable" ]; then | |
npm run build:example | |
fi | |
- run: npx [email protected] install chromium | |
- name: Get Open MCT e2e tests | |
uses: nick-fields/retry@v2 | |
with: | |
timeout_minutes: 10 | |
max_attempts: 3 | |
command: npm run test:getopensource | |
- name: Check that yamcs is available | |
run: | | |
docker ps -a | |
npm run wait-for-yamcs | |
- name: Check Yamcs installed version | |
run: | | |
response=$(curl -s -w "%{http_code}" -o yamcs_version.json http://localhost:8090/api/) | |
if [ "$response" -eq 200 ]; then | |
cat yamcs_version.json | jq '.yamcsVersion' | |
else | |
echo "Error: Unable to fetch Yamcs version. HTTP status code: $response" | |
exit 1 | |
fi | |
- name: Run Quickstart tests and publish to deploysentinel | |
env: | |
DEPLOYSENTINEL_API_KEY: ${{ secrets.DEPLOYSENTINEL_API_KEY }} | |
run: npm run test:e2e:quickstart | |
- name: Capture docker logs to file | |
if: always() | |
run: docker logs yamcs > yamcs-docker-log.txt 2>&1 | |
- name: archive docker logs | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
path: yamcs-docker-log.txt | |
- name: Archive makeout.txt | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
path: /quickstart/docker/makeout.txt | |
- name: Archive test results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
path: test-results | |
- name: Archive html test results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
path: tests/html-test-results | |
- name: Remove pr:e2e:quickstart label (if present) | |
if: ${{ contains(github.event.pull_request.labels.*.name, 'pr:e2e:quickstart') }} | |
uses: actions/github-script@v6 | |
with: | |
script: | | |
const { owner, repo, number } = context.issue; | |
const labelToRemove = 'pr:e2e:quickstart'; | |
try { | |
await github.rest.issues.removeLabel({ | |
owner, | |
repo, | |
issue_number: number, | |
name: labelToRemove | |
}); | |
} catch (error) { | |
core.warning(`Failed to remove 'pr:e2e:quickstart' label: ${error.message}`); | |
} |