Skip to content

Commit 692542a

Browse files
author
Aaron Roller
authored
Merge pull request #1 from AutoModality/feature/PD-11
feat: added semantic release and binary packages
2 parents f4322e0 + a3ade2b commit 692542a

32 files changed

+1688
-107
lines changed

.github/workflows/package.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
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.2.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+
dev-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_DEV_ENTITLEMENT }}
24+
release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }}
25+
- name: The generated package
26+
run: echo "The artifact is ${{ steps.package.outputs.artifact-path }}"
27+
- name: Deploy
28+
id: deploy
29+
uses: AutoModality/action-cloudsmith@0.2.0
30+
with:
31+
api-key: ${{ secrets.CLOUDSMITH_API_KEY }}
32+
command: 'push'
33+
format: 'deb'
34+
owner: 'automodality'
35+
repo: 'dev'
36+
distro: 'ubuntu'
37+
release: 'xenial'
38+
file: '${{ steps.package.outputs.artifact-path }}'

.github/workflows/release.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
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: Determine the Release Version
12+
uses: cycjimmy/semantic-release-action@v2
13+
id: semantic # `id` for output variables
14+
with:
15+
semantic_version: 15.14.0
16+
dry_run: true
17+
env:
18+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
19+
- name: Package
20+
if: steps.semantic.outputs.new_release_published == 'true'
21+
id: package
22+
uses: AutoModality/action-package-debian-ros@v1.2.1
23+
with:
24+
version: ${{ steps.semantic.outputs.new_release_version }}
25+
release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }}
26+
# no dev repo in master!!!
27+
- name: Deploy
28+
if: steps.semantic.outputs.new_release_published == 'true'
29+
id: deploy
30+
uses: AutoModality/action-cloudsmith@0.2.0
31+
with:
32+
api-key: ${{ secrets.CLOUDSMITH_API_KEY }}
33+
command: 'push'
34+
format: 'deb'
35+
owner: 'automodality'
36+
repo: 'release'
37+
distro: 'ubuntu'
38+
release: 'xenial'
39+
file: '${{ steps.package.outputs.artifact-path }}'
40+
- name: Publish Release to Github
41+
if: steps.semantic.outputs.new_release_published == 'true'
42+
uses: cycjimmy/semantic-release-action@v2
43+
with:
44+
semantic_version: 15.14.0
45+
extra_plugins: |
46+
@semantic-release/changelog@3.0.0
47+
env:
48+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/story.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
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: Package
13+
id: package
14+
uses: AutoModality/action-package-debian-ros@v1.2.0
15+
with:
16+
dev-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_DEV_ENTITLEMENT }}
17+
release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }}
18+
19+
# - name: build_depends
20+
# run: |
21+
# echo "Test"
22+
# - name: install_build_deps
23+
# run: |
24+
# sudo apt-get install -y devscripts equivs
25+
26+
# - name: force_amutils
27+
# run: |
28+
# sudo apt-get install ros-kinetic-am-utils
29+
30+
# - name: install_depends
31+
# run: |
32+
# sudo mk-build-deps --install --tool='apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes' debian/control
33+
34+
# - name: make
35+
# uses: AutoModality/action-make-ros@v1.0.0
36+

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,9 @@ devel/
55
logs/
66
install/
77
doc/
8+
debian/ros-kinetic-am-ouster*
9+
debian/source
10+
debian/*-stamp
11+
debian/files
12+
catkin_ws
13+
*~

Makefile

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
SHELL := /bin/bash
2+
3+
default:
4+
source /opt/ros/kinetic/setup.bash && cd catkin_ws && catkin clean -f -i -y && catkin build -j3 && \
5+
catkin config --cmake-args "-DCATKIN_RUNNING_TESTS=False" && catkin build --catkin-make-args run_tests -- --no-status && \
6+
catkin config --cmake-args "-DCATKIN_RUNNING_TESTS=True" && catkin test --no-status
7+
rm -f catkin_ws/install/lib/pkgconfig/catkin_tools_prebuild.pc
8+
@echo "Built!!!!"
9+
10+
install:
11+
rm -rf catkin_ws/install/share/catkin_tools_prebuild
12+
install -d $(DESTDIR)/opt/ros/kinetic/
13+
cp -f -p -r catkin_ws/install/lib $(DESTDIR)/opt/ros/kinetic
14+
cp -f -p -r catkin_ws/install/share $(DESTDIR)/opt/ros/kinetic
15+
cp -f -p -r catkin_ws/install/include $(DESTDIR)/opt/ros/kinetic
16+
rm -f $(DESTDIR)/opt/ros/kinetic/lib/pkgconfig/catkin_tools_prebuild.pc
17+
18+
19+
clean:
20+
@echo "Cleaning"
21+
rm -rf catkin_ws

configure

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/bin/bash
2+
PACKAGE=am-ouster
3+
source /opt/ros/kinetic/setup.bash
4+
echo "We are $(pwd)"
5+
CURDIR=$(readlink -f $(pwd))
6+
mkdir -p catkin_ws/src/${PACKAGE}
7+
WORKSPACE=$(readlink -f ./catkin_ws)
8+
cp -r {ouster_client,ouster_ros} catkin_ws/src/${PACKAGE}
9+
cd catkin_ws
10+
catkin init --workspace .
11+
echo "PWD: $(pwd)"
12+
catkin config --install --cmake-args -DCATKIN_ENABLE_TESTING=True
13+

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: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
Source: ros-kinetic-am-ouster
2+
Section: misc
3+
Priority: extra
4+
Maintainer: info <info@automodality.com>
5+
Build-Depends: debhelper (>= 9.0.0), ros-kinetic-catkin, ros-kinetic-geometry-msgs, ros-kinetic-message-generation, ros-kinetic-nav-msgs, ros-kinetic-rosconsole, ros-kinetic-roscpp, ros-kinetic-rostime, ros-kinetic-sensor-msgs, ros-kinetic-std-msgs, ros-kinetic-latency-testing (>= 2.feature-BB-773.15), ros-kinetic-rospy, ros-kinetic-rostest, libgtest-dev
6+
Homepage: https://github.com/AutoModality/am-utils
7+
Standards-Version: 3.9.2
8+
9+
Package: ros-kinetic-am-ouster
10+
Architecture: any
11+
Depends: ${shlibs:Depends}, ${misc:Depends}, ros-kinetic-geometry-msgs, ros-kinetic-message-runtime, ros-kinetic-nav-msgs, ros-kinetic-rosconsole, ros-kinetic-roscpp, ros-kinetic-rostime, ros-kinetic-sensor-msgs, ros-kinetic-std-msgs, ros-kinetic-latency-testing (>= 2.feature-BB-773.15), ros-kinetic-rospy, ros-kinetic-rostest
12+
Description: The am ouster package

0 commit comments

Comments
 (0)