This repository has been archived by the owner on Sep 2, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 22
115 lines (100 loc) · 3.48 KB
/
kuksa_dds_feeder.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# /********************************************************************************
# * Copyright (c) 2022 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 2.0 which is available at
# * http://www.apache.org/licenses/LICENSE-2.0
# *
# * SPDX-License-Identifier: Apache-2.0
# ********************************************************************************/
name: kuksa_dds_feeder
on:
push:
branches: [ main ]
pull_request:
paths:
- ".github/workflows/kuksa_dds_feeder.yml"
- "dds2val/**"
workflow_dispatch:
concurrency:
group: ${{ github.ref }}-${{ github.workflow }}
cancel-in-progress: true
jobs:
check-dds-feeder:
name: "Check DDS feeder"
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Retrieve build binaries
uses: actions/download-artifact@v3
with:
path: ${{github.workspace}}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- id: repository-name-adjusted
name: Make repository name in lower case for docker upload.
uses: ASzc/change-string-case-action@v5
with:
string: ${{ github.repository }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: build linux/amd64 docker image
id: image_build_amd64
uses: docker/build-push-action@v4
with:
pull: true
push: false
outputs: |
type=oci,dest=./dds2val_amd64.tar
context: ./dds2val
file: ./dds2val/Dockerfile
build-args: |
TARGETPLATFORM=linux/amd64
tags: ${{ github.sha }}
labels: |
org.opencontainers.image.source=https://github.com/${{steps.repository-name-adjusted.outputs.lowercase}}
- name: Temporarily save linux/amd64 Docker image
uses: actions/upload-artifact@v3
with:
name: Container image
path: ${{github.workspace}}/dds2val_amd64.tar
retention-days: 1
- name: build linux/arm64 docker image
id: image_build_arm64
uses: docker/build-push-action@v4
with:
pull: true
push: false
outputs: |
type=oci,dest=./dds2val_arm64.tar
context: ./dds2val
file: ./dds2val/Dockerfile
build-args: |
TARGETPLATFORM=linux/arm64
TARGETARCH=arm64
tags: ${{ github.sha }}
labels: |
org.opencontainers.image.source=https://github.com/${{steps.repository-name-adjusted.outputs.lowercase}}
- name: Temporarily save linux/arm64 Docker image
uses: actions/upload-artifact@v3
with:
name: Container image
path: ${{github.workspace}}/dds2val_arm64.tar
retention-days: 1
- name: Run dds tests
run: |
cd dds2val
# Note - if relying on kuksa-client pre-releases you must use --pre on the line below
pip3 install --no-cache-dir -r requirements/requirements.txt -r requirements/requirements-kml.txt -r requirements/requirements-test.txt
./ddsproviderlib/idls/generate_py_dataclass.sh
python -m pytest tests/*