-
Notifications
You must be signed in to change notification settings - Fork 351
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ref #3023: Add native compilation with sources #4021
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,118 @@ | ||
# --------------------------------------------------------------------------- | ||
# Licensed to the Apache Software Foundation (ASF) under one or more | ||
# contributor license agreements. See the NOTICE file distributed with | ||
# this work for additional information regarding copyright ownership. | ||
# The ASF licenses this file to You under the Apache License, Version 2.0 | ||
# (the "License"); you may not use this file except in compliance with | ||
# the License. You may obtain a copy of the License at | ||
# | ||
# http://www.apache.org/licenses/LICENSE-2.0 | ||
# | ||
# Unless required by applicable law or agreed to in writing, software | ||
# distributed under the License is distributed on an "AS IS" BASIS, | ||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
# See the License for the specific language governing permissions and | ||
# limitations under the License. | ||
# --------------------------------------------------------------------------- | ||
|
||
name: native | ||
|
||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
on: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Once we have verified for this release, let's change this to run only on a nightly schedule to avoid such a high resource consumption process for every PR or merge. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ok, as you like but I did my best to avoid increasing the overall duration of a full build as explained in this comment #4021 (comment) There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, and it's a great effort indeed. However, native workflow is too much resource consuming and we don't have enough capacity to run at every github action. We still have a daily view of what's going on, though. |
||
pull_request: | ||
branches: | ||
- main | ||
- "release-*" | ||
paths-ignore: | ||
- 'docs/**' | ||
- 'proposals/**' | ||
- '**.adoc' | ||
- '**.md' | ||
- 'KEYS' | ||
- 'LICENSE' | ||
- 'NOTICE' | ||
push: | ||
branches: | ||
- main | ||
- "release-*" | ||
paths-ignore: | ||
- 'docs/**' | ||
- 'proposals/**' | ||
- '**.adoc' | ||
- '**.md' | ||
- 'KEYS' | ||
- 'LICENSE' | ||
- 'NOTICE' | ||
workflow_dispatch: | ||
inputs: | ||
log-level: | ||
description: 'Set the operator log level (info or debug)' | ||
required: false | ||
pre-built-kamel-image: | ||
description: 'Kamel image url for skipping building of kamel stages. Used for debugging' | ||
required: false | ||
skip-problematic: | ||
description: 'Whether tests marked as problematic should be skipped - false by default (sets CAMEL_K_TEST_SKIP_PROBLEMATIC)' | ||
required: false | ||
default: false | ||
test-filters: | ||
description: | | ||
Filter the tests in this test suite by assigning the test pattern to TEST_NATIVE_RUN, | ||
eg. TEST_NATIVE_RUN=TestBasic will only run tests prefixed with 'TestBasic' | ||
required: false | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
install-native-high-memory: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why 2 different jobs? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Initially, it was to be able to launch the "lightest" tests on a Linux runner but they still need more than what a Linux runner can offer. Now, it is still interesting as they are launched in parallel so it allows having a duration that is equivalent to the duration of |
||
|
||
runs-on: macos-12 | ||
|
||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
with: | ||
persist-credentials: false | ||
submodules: recursive | ||
- name: Convert input parameters to env vars | ||
shell: bash | ||
run: | | ||
./.github/workflows/manual-exec-process-inputs.sh \ | ||
-i "${{ github.event.inputs.pre-built-kamel-image }}" \ | ||
-p "${{ github.event.inputs.skip-problematic }}" \ | ||
-q "${{ github.event.inputs.log-level }}" \ | ||
-t "${{ github.event.inputs.test-filters }}" | ||
- name: Native smoke tests | ||
uses: ./.github/actions/e2e-install-native | ||
with: | ||
cluster-config-data: ${{ secrets.E2E_CLUSTER_CONFIG }} | ||
cluster-kube-config-data: ${{ secrets.E2E_KUBE_CONFIG }} | ||
high-memory: 'true' | ||
|
||
install-native: | ||
|
||
runs-on: macos-12 | ||
|
||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
with: | ||
persist-credentials: false | ||
submodules: recursive | ||
- name: Convert input parameters to env vars | ||
shell: bash | ||
run: | | ||
./.github/workflows/manual-exec-process-inputs.sh \ | ||
-i "${{ github.event.inputs.pre-built-kamel-image }}" \ | ||
-p "${{ github.event.inputs.skip-problematic }}" \ | ||
-q "${{ github.event.inputs.log-level }}" \ | ||
-t "${{ github.event.inputs.test-filters }}" | ||
- name: Native smoke tests | ||
uses: ./.github/actions/e2e-install-native | ||
with: | ||
cluster-config-data: ${{ secrets.E2E_CLUSTER_CONFIG }} | ||
cluster-kube-config-data: ${{ secrets.E2E_KUBE_CONFIG }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can merge with this commit id, but, please, create a follow up issue to release the kind-action and update here accordingly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here it is #4063