Skip to content

Commit 9a3f281

Browse files
author
Aaron Roller
authored
Merge pull request #1 from AutoModality/feature/BB-772
BB-772 Added Github Actions Make, Package, Release
2 parents b8e61b6 + b5b2cdf commit 9a3f281

File tree

12 files changed

+1278
-1
lines changed

12 files changed

+1278
-1
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
FROM ros:kinetic-perception
2+
3+
# Copies your code file from your action repository to the filesystem path `/` of the container
4+
COPY entrypoint.sh /entrypoint.sh
5+
6+
# Code file to execute when the docker container starts up (`entrypoint.sh`)
7+
ENTRYPOINT ["/entrypoint.sh"]
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# action.yml
2+
name: 'Make on Ros Kinetic Perception'
3+
description: 'Standard cmake and make on ros:kinetic-perception'
4+
runs:
5+
using: 'docker'
6+
image: 'Dockerfile'
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/bin/bash
2+
3+
set -e # fail on error
4+
5+
cd /github/workspace
6+
7+
source /opt/ros/kinetic/setup.bash
8+
9+
rm -rf build #clean the build
10+
mkdir build
11+
cd build
12+
pwd
13+
cmake ..
14+
make

.github/workflows/package.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: Release Candidate
2+
on:
3+
pull_request:
4+
branches:
5+
- master
6+
jobs:
7+
package:
8+
runs-on: ubuntu-16.04
9+
steps:
10+
- uses: actions/checkout@v1
11+
- name: Generate build number
12+
id: buildnumber
13+
uses: einaregilsson/build-number@v2
14+
with:
15+
token: ${{secrets.github_token}}
16+
- name: Package
17+
id: package
18+
uses: AutoModality/action-package-debian-ros@v1.1.0
19+
with:
20+
branch: ${{ github.event.pull_request.head.ref }}
21+
pull-request-number: ${{ github.event.number }}
22+
build-number: ${{ steps.buildnumber.outputs.build_number }}
23+
- name: The generated package
24+
run: echo "The artifact is ${{ steps.package.outputs.artifact-path }}"
25+
- name: Deploy
26+
id: deploy
27+
uses: AutoModality/action-cloudsmith@0.2.0
28+
with:
29+
api-key: ${{ secrets.CLOUDSMITH_API_KEY }}
30+
command: 'push'
31+
format: 'deb'
32+
owner: 'automodality'
33+
repo: 'dev'
34+
distro: 'ubuntu'
35+
release: 'xenial'
36+
file: '${{ steps.package.outputs.artifact-path }}'

.github/workflows/release.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Release
2+
on:
3+
push:
4+
branches:
5+
- master
6+
jobs:
7+
package:
8+
runs-on: ubuntu-16.04
9+
steps:
10+
- uses: actions/checkout@v1
11+
- name: Semantic Release
12+
uses: cycjimmy/semantic-release-action@v2
13+
id: semantic # `id` for output variables
14+
with:
15+
semantic_version: 15.14.0
16+
extra_plugins: |
17+
@semantic-release/git
18+
@semantic-release/changelog@3.0.0
19+
env:
20+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
21+
- name: Package
22+
if: steps.semantic.outputs.new_release_published == 'true'
23+
id: package
24+
uses: AutoModality/action-package-debian-ros@v1.1.0
25+
with:
26+
version: ${{ steps.semantic.outputs.new_release_version }}
27+
- name: The generated package
28+
run: echo "The artifact is ${{ steps.package.outputs.artifact-path }}"
29+
- name: Deploy
30+
if: steps.semantic.outputs.new_release_published == 'true'
31+
id: deploy
32+
uses: AutoModality/action-cloudsmith@0.2.0
33+
with:
34+
api-key: ${{ secrets.CLOUDSMITH_API_KEY }}
35+
command: 'push'
36+
format: 'deb'
37+
owner: 'automodality'
38+
repo: 'release'
39+
distro: 'ubuntu'
40+
release: 'xenial'
41+
file: '${{ steps.package.outputs.artifact-path }}'

.github/workflows/story.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
name: Story Development
2+
3+
on:
4+
push:
5+
branches-ignore:
6+
- master
7+
jobs:
8+
build:
9+
runs-on: ubuntu-16.04
10+
steps:
11+
- uses: actions/checkout@v1
12+
- name: make
13+
uses: ./.github/actions/make@local
14+

README.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,15 @@
1-
# am-utils
1+
# AM Utils
2+
3+
A common library for sharing core code.
4+
5+
6+
| Github Action | Debian Package |
7+
| ------------- | ------------- |
8+
| [![Story Development](https://github.com/AutoModality/am-utils/workflows/Story%20Development/badge.svg)](https://github.com/AutoModality/am-utils/actions?query=workflow%3A%22Story+Development%22) | -- |
9+
| [![Release Candidate](https://github.com/AutoModality/am-utils/workflows/Release%20Candidate/badge.svg)](https://github.com/AutoModality/am-utils/actions?query=workflow%3A%22Release+Candidate%22) | [![Latest Version @ Cloudsmith](https://api-prd.cloudsmith.io/badges/version/automodality/dev/deb/ros-kinetic-am-utils/latest/d=ubuntu%252Fxenial;t=1/?render=true&badge_token=gAAAAABeEXmnoIyJ49KZBuqu7owI69o58O-pEmDK1uXKcvR-65M3zvVldA6lRgnSlbOXlwUdmAwIYqjEaAIZ_K0DXuO7agbeqnAtp1uXvuwoxD6KMqz3wYQ%3D)](https://cloudsmith.io/~automodality/repos/dev/packages/detail/deb/ros-kinetic-am-utils/latest/d=ubuntu%252Fxenial;t=1/) |
10+
| [![Release](https://github.com/AutoModality/am-utils/workflows/Release/badge.svg)](https://github.com/AutoModality/am-utils/actions?query=workflow%3A%22Release) | TBD|
11+
12+
13+
## Releases
14+
15+
See [releases](https://github.com/AutoModality/am-utils/releases) for the latest. Follows the standard [Development Lifecycle](https://automodality.atlassian.net/wiki/spaces/AUTOMOD/pages/668664251/Development+Lifecycle).

debian/compat

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
9

debian/control

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
Source: ros-kinetic-am-utils
2+
Section: unknown
3+
Priority: extra
4+
Maintainer: Jimi Damon <jdamon@automodality.com>
5+
Build-Depends: cmake, debhelper (>=9),javahelper
6+
Standards-Version: 3.9.6
7+
Homepage: <insert the upstream URL, if relevant>
8+
9+
Package: ros-kinetic-am-utils
10+
Architecture: any
11+
Multi-Arch: foreign
12+
Depends: ${misc:Depends}, ${shlibs:Depends}
13+
Description: Utilites for AM based ROs packages

0 commit comments

Comments
 (0)