Skip to content

Commit

Permalink
ci: port workflows from autoware.universe (#1)
Browse files Browse the repository at this point in the history
* ci: port workflows from autoware.universe

Signed-off-by: Ryohsuke Mitsudome <[email protected]>

* fix(build_depends.repos): remove unnecessary build dependencies

Signed-off-by: mitsudome-r <[email protected]>

---------

Signed-off-by: Ryohsuke Mitsudome <[email protected]>
Signed-off-by: mitsudome-r <[email protected]>
  • Loading branch information
mitsudome-r authored Feb 9, 2024
1 parent 1c540a2 commit 46c7199
Show file tree
Hide file tree
Showing 43 changed files with 1,508 additions and 0 deletions.
47 changes: 47 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Modified from https://github.com/ament/ament_lint/blob/master/ament_clang_format/ament_clang_format/configuration/.clang-format
Language: Cpp
BasedOnStyle: Google

AccessModifierOffset: -2
AlignAfterOpenBracket: AlwaysBreak
AllowShortFunctionsOnASingleLine: InlineOnly
BraceWrapping:
AfterClass: true
AfterFunction: true
AfterNamespace: true
AfterStruct: true
BreakBeforeBraces: Custom
ColumnLimit: 100
ConstructorInitializerIndentWidth: 0
ContinuationIndentWidth: 2
DerivePointerAlignment: false
PointerAlignment: Middle
ReflowComments: true
IncludeCategories:
# C++ system headers
- Regex: <[a-z_]*>
Priority: 6
CaseSensitive: true
# C system headers
- Regex: <.*\.h>
Priority: 5
CaseSensitive: true
# Boost headers
- Regex: boost/.*
Priority: 4
CaseSensitive: true
# Message headers
- Regex: .*_msgs/.*
Priority: 3
CaseSensitive: true
- Regex: .*_srvs/.*
Priority: 3
CaseSensitive: true
# Other Package headers
- Regex: <.*>
Priority: 2
CaseSensitive: true
# Local package headers
- Regex: '".*"'
Priority: 1
CaseSensitive: true
9 changes: 9 additions & 0 deletions .cspell-partial.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"ignorePaths": [
"**/perception/**",
"sensing/tier4_pcl_extensions/include/**",
"perception/bytetrack/lib/**"
],
"ignoreRegExpList": [],
"words": ["dltype", "tvmgen", "quantizer", "imageio", "mimsave"]
}
3 changes: 3 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
### Copied from .github/CODEOWNERS-manual ###

### Automatically generated from package.xml ###
Empty file added .github/CODEOWNERS-manual
Empty file.
41 changes: 41 additions & 0 deletions .github/labeler.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
"type:ci":
- .github/**/*
- "*.json"
- "*.yaml"
- "*.cfg"
- .clang-format
- .gitignore
- .prettierignore
"type:documentation":
- docs/**/*
- "**/*.md"
- "**/*.rst"
- "**/*.jpg"
- "**/*.png"
- "**/*.svg"
"component:common":
- common/**/*
"component:control":
- control/**/*
"component:evaluator":
- evaluator/**/*
"component:launch":
- launch/**/*
"component:localization":
- localization/**/*
"component:map":
- map/**/*
"component:perception":
- perception/**/*
"component:planning":
- planning/**/*
"component:sensing":
- sensing/**/*
"component:simulation":
- simulator/**/*
"component:system":
- system/**/*
"component:tools":
- tools/**/*
"component:vehicle":
- vehicle/**/*
12 changes: 12 additions & 0 deletions .github/stale.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Modified from https://github.com/probot/stale#usage

# Number of days of inactivity before an Issue or Pull Request with the stale label is closed
daysUntilClose: false

# Label to use when marking as stale
staleLabel: status:stale

# Comment to post when marking as stale
markComment: >
This pull request has been automatically marked as stale because it has not had
recent activity.
91 changes: 91 additions & 0 deletions .github/sync-files.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
- repository: autowarefoundation/autoware
files:
- source: CODE_OF_CONDUCT.md
- source: CONTRIBUTING.md
- source: DISCLAIMER.md
- source: LICENSE
- source: .github/ISSUE_TEMPLATE/bug.yaml
- source: .github/ISSUE_TEMPLATE/config.yml
- source: .github/ISSUE_TEMPLATE/task.yaml
- source: .github/PULL_REQUEST_TEMPLATE.md
- source: .github/PULL_REQUEST_TEMPLATE/small-change.md
- source: .github/PULL_REQUEST_TEMPLATE/standard-change.md
- source: .github/dependabot.yaml
- source: .github/stale.yml
- source: .github/workflows/cancel-previous-workflows.yaml
- source: .github/workflows/github-release.yaml
- source: .github/workflows/pre-commit.yaml
- source: .github/workflows/pre-commit-optional.yaml
- source: .github/workflows/semantic-pull-request.yaml
- source: .github/workflows/spell-check-differential.yaml
- source: .github/workflows/sync-files.yaml
- source: .clang-format
- source: .markdown-link-check.json
- source: .markdownlint.yaml
- source: .pre-commit-config-optional.yaml
- source: .prettierignore
- source: .prettierrc.yaml
- source: .yamllint.yaml
- source: CPPLINT.cfg
- source: setup.cfg

- repository: autowarefoundation/autoware_common
files:
- source: .github/workflows/build-and-test.yaml
pre-commands: |
sd "container: ros:(\w+)" "container: ghcr.io/autowarefoundation/autoware-universe:\$1-latest" {source}
sd -s 'container: ${{ matrix.container }}' 'container: ${{ matrix.container }}${{ matrix.container-suffix }}' {source}
sd -- \
" include:" \
" container-suffix:
- \"\"
- -cuda
include:" {source}
- source: .github/workflows/build-and-test-differential-self-hosted.yaml
pre-commands: |
sd "container: ros:(\w+)" "container: ghcr.io/autowarefoundation/autoware-universe:\$1-latest" {source}
sd -s 'container: ${{ matrix.container }}' 'container: ${{ matrix.container }}${{ matrix.container-suffix }}' {source}
sd -- \
" include:" \
" container-suffix:
- \"\"
- -cuda
include:" {source}
- source: .github/workflows/build-and-test-self-hosted.yaml
pre-commands: |
sd "container: ros:(\w+)" "container: ghcr.io/autowarefoundation/autoware-universe:\$1-latest" {source}
sd -s 'container: ${{ matrix.container }}' 'container: ${{ matrix.container }}${{ matrix.container-suffix }}' {source}
sd -- \
" include:" \
" container-suffix:
- \"\"
- -cuda
include:" {source}
- source: .github/workflows/check-build-depends.yaml
- source: .github/workflows/clang-tidy-pr-comments.yaml
- source: .github/workflows/clang-tidy-pr-comments-manually.yaml
- source: .github/workflows/update-codeowners-from-packages.yaml
- source: .pre-commit-config.yaml
- source: codecov.yaml

- repository: autowarefoundation/autoware-documentation
files:
- source: .github/workflows/deploy-docs.yaml
- source: .github/workflows/delete-closed-pr-docs.yaml
- source: mkdocs-base.yaml
dest: mkdocs.yaml
pre-commands: |
sd "Autoware Documentation" "Autoware Universe Documentation" {source}
sd "autoware-documentation" "autoware.universe" {source}
sd "repo_url: .*" "repo_url: https://github.com/autowarefoundation/autoware.universe" {source}
sd "/edit/main/docs/" "/edit/main/" {source}
sd "docs_dir: .*" "docs_dir: ." {source}
sd "assets/(\w+)" "docs/assets/\$1" {source}
sd -- \
" - macros" \
" - macros:
module_name: mkdocs_macros" {source}
- source: docs/assets/js/mathjax.js
50 changes: 50 additions & 0 deletions .github/workflows/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
## Description

<!-- Write a brief description of this PR. -->

## Related links

<!-- Write the links related to this PR. Private links should be clearly marked as private, for example, '[FOO COMPANY INTERNAL LINK](https://example.com)'. -->

## Tests performed

<!-- Describe how you have tested this PR. -->

## Notes for reviewers

<!-- Write additional information if necessary. It should be written if there are related PRs that should be merged at the same time. -->

## Interface changes

<!-- Describe any changed interfaces, such as topics, services, or parameters. -->

## Effects on system behavior

<!-- Describe how this PR affects the system behavior. -->

## Pre-review checklist for the PR author

The PR author **must** check the checkboxes below when creating the PR.

- [ ] I've confirmed the [contribution guidelines].
- [ ] The PR follows the [pull request guidelines].

## In-review checklist for the PR reviewers

The PR reviewers **must** check the checkboxes below before approval.

- [ ] The PR follows the [pull request guidelines].
- [ ] The PR has been properly tested.
- [ ] The PR has been reviewed by the code owners.

## Post-review checklist for the PR author

The PR author **must** check the checkboxes below before merging.

- [ ] There are no open discussions or they are tracked via tickets.
- [ ] The PR is ready for merge.

After all checkboxes are checked, anyone who has write access can merge the PR.

[contribution guidelines]: https://autowarefoundation.github.io/autoware-documentation/main/contributing/
[pull request guidelines]: https://autowarefoundation.github.io/autoware-documentation/main/contributing/pull-request-guidelines/
61 changes: 61 additions & 0 deletions .github/workflows/build-and-test-differential-self-hosted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: build-and-test-differential-self-hosted

on:
pull_request:
types:
- opened
- synchronize
- labeled
workflow_dispatch:

jobs:
prevent-no-label-execution:
uses: autowarefoundation/autoware-github-actions/.github/workflows/prevent-no-label-execution.yaml@v1
with:
label: ARM64

build-and-test-differential-self-hosted:
needs: prevent-no-label-execution
if: ${{ needs.prevent-no-label-execution.outputs.run == 'true' }}
runs-on: [self-hosted, linux, ARM64]
container: ${{ matrix.container }}${{ matrix.container-suffix }}
strategy:
fail-fast: false
matrix:
rosdistro:
- humble
container-suffix:
- ""
- -cuda
include:
- rosdistro: humble
container: ghcr.io/autowarefoundation/autoware-universe:humble-latest
build-depends-repos: build_depends.repos
steps:
- name: Check out repository
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Remove exec_depend
uses: autowarefoundation/autoware-github-actions/remove-exec-depend@v1

- name: Get modified packages
id: get-modified-packages
uses: autowarefoundation/autoware-github-actions/get-modified-packages@v1

- name: Build
if: ${{ steps.get-modified-packages.outputs.modified-packages != '' }}
uses: autowarefoundation/autoware-github-actions/colcon-build@v1
with:
rosdistro: ${{ matrix.rosdistro }}
target-packages: ${{ steps.get-modified-packages.outputs.modified-packages }}
build-depends-repos: ${{ matrix.build-depends-repos }}

- name: Test
if: ${{ steps.get-modified-packages.outputs.modified-packages != '' }}
uses: autowarefoundation/autoware-github-actions/colcon-test@v1
with:
rosdistro: ${{ matrix.rosdistro }}
target-packages: ${{ steps.get-modified-packages.outputs.modified-packages }}
build-depends-repos: ${{ matrix.build-depends-repos }}
Loading

0 comments on commit 46c7199

Please sign in to comment.