Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 23 additions & 25 deletions .github/workflows/build_and_test_autosd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ on:
paths:
- 'integration/**'


jobs:
build:
name: x86_64
Expand All @@ -41,43 +40,44 @@ jobs:
sudo apt-get update -y
sudo apt-get install -y podman curl qemu-system createrepo-c

- name: Build Lola Demo
- name: Build Showcases RPMs
run: |
bazel build --config=autosd-x86_64 //images/autosd_x86_64:lola-demo
working-directory: ./integration
bazel build --config autosd-x86_64 //images/autosd_x86_64:score-reference-integration
working-directory: ./integration/images/autosd_x86_64

- name: Copy RPMs
run: |
set -e
mkdir -p ./images/autosd_x86_64/build/rpms
cp bazel-out/k8-fastbuild/bin/images/autosd_x86_64/lola-demo-1.0.0-1.x86_64.rpm ./images/autosd_x86_64/build/rpms
cp bazel-out/k8-fastbuild/bin/images/autosd_x86_64/lola-demo-1.0.0-1.src.rpm ./images/autosd_x86_64/build/rpms
cp bazel-bin/images/autosd_x86_64/score-reference-integration-0.6.0-1.x86_64.rpm ./images/autosd_x86_64/build/rpms
createrepo_c ./images/autosd_x86_64/build/rpms/
ls -l ./images/autosd_x86_64/build/rpms/
working-directory: ./integration

- name: Install AIB Tools
run: |
curl -o auto-image-builder.sh "https://gitlab.com/lrossett/automotive-image-builder/-/raw/script-fix/auto-image-builder.sh?ref_type=heads"
curl -o auto-image-builder.sh "https://gitlab.com/CentOS/automotive/src/automotive-image-builder/-/raw/main/auto-image-builder.sh?ref_type=heads"
chmod +x auto-image-builder.sh

curl -o automotive-image-runner "https://gitlab.com/CentOS/automotive/src/automotive-image-builder/-/raw/main/automotive-image-runner"
chmod +x automotive-image-runner
working-directory: ./integration/images/autosd_x86_64/build

- name: Build lola-demo.aib.yml
- name: Build AutoSD QEMU (x86_64)
run: |
sudo ./auto-image-builder.sh build-deprecated \
--distro autosd10 \
--mode package \
--target qemu \
--export qcow2 \
export AIB_LOCAL_CONTAINER_STORAGE=$PWD/_build/containers-storage

mkdir -p _build/containers-storage
sudo -E ./auto-image-builder.sh build-builder --distro=autosd10-sig

sudo -E ./auto-image-builder.sh build \
--distro=autosd10-sig \
--target=qemu \
--define-file vars.yml \
--define-file vars-devel.yml \
image.aib.yml \
disk.qcow2
localhost/score:latest

sudo -E ./auto-image-builder.sh to-disk-image localhost/score:latest _build/disk.qcow2

sudo chown $(id -u) disk.qcow2
sudo chown $(id -u):$(id -u) _build/disk.qcow2
working-directory: ./integration/images/autosd_x86_64/build

- name: Enable KVM group perms
Expand All @@ -91,18 +91,16 @@ jobs:
sshcmd() {
sshpass -p "$SSH_PASSWORD" ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -p 2222 root@localhost $@
}

./scripts/run_qemu

sshcmd 'cat /etc/os-release'
sleep 10
sshcmd 'bluechictl start agent-qm lola-ipc-sub.service'
sleep 5
# sshcmd '/usr/bin/lola-ipc-test' Disabled until correct exmaples deployed
working-directory: ./integration/images/autosd_x86_64/build
env:
SSH_PASSWORD: password

- name: Archive QEMU disk image
- name: Archive QEMU disk image (x86_64)
uses: actions/upload-artifact@v4
with:
name: autosd10-score-reference_integration-x86_64.qcow2
path: integration/images/autosd_x86_64/build/disk.qcow2
path: integration/images/autosd_x86_64/build/_build/disk.qcow2
13 changes: 3 additions & 10 deletions integration/bazel_common/score_gcc_toolchains.MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -61,26 +61,19 @@ bazel_dep(name = "os_autosd_toolchain", version = "0.0.1")
# override with git
git_override(
module_name = "os_autosd_toolchain",
remote = "https://github.com/odra/inc_os_autosd.git",
branch = "repo-new-structure",
remote = "https://github.com/eclipse-score/inc_os_autosd.git",
branch = "main",
strip_prefix = "toolchain"

)
autosd_10_gcc = use_extension("@os_autosd_toolchain//autosd_10_gcc:extensions.bzl", "autosd_10_gcc_extension")
use_repo(autosd_10_gcc, "autosd_10_gcc_repo")


autosd_9_gcc = use_extension("@os_autosd_toolchain//autosd_9_gcc:extensions.bzl", "autosd_9_gcc_extension")
use_repo(autosd_9_gcc, "autosd_9_gcc_repo")


# Register the RPM toolchain
rpm_toolchain = use_extension("@rules_rpm//toolchains:extensions.bzl", "rpm_toolchain")
use_repo(rpm_toolchain, "rpm_toolchain")


use_repo(eb, "gcc_toolchain", "gcc_toolchain_gcc")
use_repo(
gcc,
"score_gcc_x86_64_toolchain",
)
)
50 changes: 34 additions & 16 deletions integration/images/autosd_x86_64/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -12,23 +12,41 @@
# *******************************************************************************
load("@rules_rpm//rpm:defs.bzl", "rpm_package")

# TODO: Shall use targets from use-cases
# Bring back files once we cleanup scrample integration soon
alias(
name = "image",
actual = "//showcases:showcases_all",
visibility = ["//visibility:public"],
)

rpm_package(
name = "lola-demo",
name = "score-reference-integration",
description = "Eclipse S-CORE Reference Integration",
summary = "Eclipse S-CORE Reference Integration",
version = "0.6.0",
binaries = [
"@score_scrample//src:scrample",
"//showcases/cli:cli",
"//showcases/kyron:kyron_example",
"//showcases/orchestration_persistency:orch_per_example",
"@score_scrample//src:scrample"
],
config_dir = "/etc/score",
data = [
"//showcases/kyron:kyron.score.json",
"//showcases/orchestration_persistency:orch_per.score.json"
],
data_dir = "/usr/share/score/examples",
)

sh_binary(
name = "run",
srcs = ["//runners/docker_x86_64/scripts:run_docker.sh"],
env={
"OCI_IMAGE": "quay.io/centos/centos:stream10"
},
args = [
"$(location :image)",
],
data = [
":image",
],
config_dir = "/etc/lola",
# data = [
# "@score_communication//score/mw/com/example/ipc_bridge:etc/mw_com_config.json",
# ],
data_dir = "/usr/share/lola/examples",
description = "LOLA middleware communication libraries for development including core communication, configuration components, and example client/server binaries for testing",
# libraries = [
# "@score_communication//score/mw/com:com",
# "@score_communication//score/mw/com:config_schema",
# ],
summary = "LOLA Demo",
version = "1.0.0",
)
4 changes: 2 additions & 2 deletions integration/images/autosd_x86_64/build/image.aib.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ content:
- bluechi-agent
- bluechi-ctl
# score
- lola-demo
- score-reference-integration

make_dirs:
- path: /etc/containers/systemd/qm.container.d
Expand Down Expand Up @@ -101,7 +101,7 @@ qm:
rpms:
- boost-devel
- bluechi-agent
- lola-demo
- score-reference-integration
add_files:
# lola service files
- path: /etc/systemd/system/lola-ipc-sub.service
Expand Down
2 changes: 1 addition & 1 deletion integration/images/autosd_x86_64/build/scripts/run_qemu
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,4 @@
-netdev user,id=n0,hostfwd=tcp::2222-:22 \
-daemonize \
-display none \
-drive file=disk.qcow2,index=0,media=disk,format=qcow2,if=virtio,id=rootdisk,snapshot=off
-drive file=_build/disk.qcow2,index=0,media=disk,format=qcow2,if=virtio,id=rootdisk,snapshot=off
5 changes: 4 additions & 1 deletion integration/runners/docker_x86_64/scripts/run_docker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,11 @@ set -euo pipefail

OVERLAY_TREE=$1
OVERLAY_ABS_PATH=$(realpath ${OVERLAY_TREE})
OCI_IMAGE=${OCI_IMAGE:=ubuntu:22.04}

echo "Starting docker with overlay image: ${OVERLAY_ABS_PATH}"

docker run --rm -it \
-v "${OVERLAY_ABS_PATH}:/showcases" \
ubuntu:22.04 \
${OCI_IMAGE} \
bash -c "/showcases/bin/cli; exec bash"
4 changes: 2 additions & 2 deletions integration/score_starter
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ mEntries = [
("Run Linux x86_64 Docker", "bazel --output_user_root=build/linux-x86_64 run --config linux-x86_64 //images/linux_x86_64:run", "linux-x86_64"),
("Run Elektrobit Corbos aarch64 QEMU",
"bazel --output_user_root=build/eb-aarch64 build --config eb-aarch64 //images/ebclfsa_aarch64/scrample_integration:run", "eb-aarch64"),
("Build Autosd x86_64 RPM",
"bazel --output_user_root=build/autosd-x86_64 build --config autosd-x86_64 //images/autosd_x86_64:lola-demo", "autosd-x86_64"),
("Run Autosd x86_64 QEMU",
"bazel --output_user_root=build/autosd-x86_64 build --config autosd-x86_64 //images/autosd_x86_64:image", "autosd-x86_64"),
("Exit", "exit 0", "exit"),
]

Expand Down
2 changes: 2 additions & 0 deletions integration/showcases/kyron/BUILD
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
load("@rules_rust//rust:defs.bzl", "rust_binary")
load("//bazel_common:bundlers.bzl", "score_pkg_bundle")

exports_files(["kyron.score.json"])

rust_binary(
name = "kyron_example",
srcs = ["main.rs"],
Expand Down
2 changes: 2 additions & 0 deletions integration/showcases/orchestration_persistency/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
load("@rules_rust//rust:defs.bzl", "rust_binary")
load("//bazel_common:bundlers.bzl", "score_pkg_bundle")

exports_files(["orch_per.score.json"])

rust_binary(
name = "orch_per_example",
srcs = ["main.rs"],
Expand Down
Loading