Skip to content

Integrate simple lifecycle examples #35

Integrate simple lifecycle examples

Integrate simple lifecycle examples #35

# *******************************************************************************
# Copyright (c) 2025 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This program and the accompanying materials are made available under the
# terms of the Apache License Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0
#
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************
name: QNX8 - Build & Test
on:
pull_request:
types: [opened, reopened, synchronize]
paths:
- 'integration/**'
merge_group:
types: [checks_requested]
paths:
- 'integration/**'
jobs:
qnx-build-x86_64:
name: x86_64
runs-on: ${{ vars.REPO_RUNNER_LABELS && fromJSON(vars.REPO_RUNNER_LABELS) || 'ubuntu-latest' }}
environment: ${{ inputs.environment-name }}
permissions:
contents: read
pull-requests: read
steps:
- name: Checkout repository (Handle all events)
uses: actions/checkout@v4.2.2
with:
ref: ${{ github.head_ref || github.event.pull_request.head.ref || github.ref }}
repository: ${{ github.event.pull_request.head.repo.full_name || github.repository }}
- name: Setup Bazel with shared caching
uses: bazel-contrib/setup-bazel@0.18.0
with:
disk-cache: ${{ inputs.bazel-disk-cache }}
repository-cache: true
bazelisk-cache: true
cache-save: ${{ github.event_name == 'push' }}
- name: Prepare QNX license
env:
SCORE_QNX_LICENSE: ${{ secrets.SCORE_QNX_LICENSE }}
run: |
set -euo pipefail
LICENSE_DIR="/opt/score_qnx/license"
sudo mkdir -p "${LICENSE_DIR}"
echo "${SCORE_QNX_LICENSE}" | base64 --decode | sudo tee "${LICENSE_DIR}/licenses" >/dev/null
- name: Build with QNX toolchain
env:
SCORE_QNX_USER: ${{ secrets.SCORE_QNX_USER }}
SCORE_QNX_PASSWORD: ${{ secrets.SCORE_QNX_PASSWORD }}
run: |
bazel build --config qnx-x86_64 //images/qnx_x86_64:image
working-directory: ./integration
- name: Cleanup QNX license
if: always()
run: sudo rm -rf /opt/score_qnx