Skip to content

Commit 5ba38c0

Browse files
author
Dummy User
committed
add pipeline and script to add commit
Signed-off-by: Dummy User <dummy@concourse.com>
1 parent 7d35f29 commit 5ba38c0

File tree

8 files changed

+141
-3
lines changed

8 files changed

+141
-3
lines changed

app.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"io/ioutil"
66
"log"
77
"strconv"
8+
"strings"
89
)
910

1011
func main() {
@@ -14,7 +15,8 @@ func main() {
1415
return
1516
}
1617

17-
message, err := ConvertToMessage(string(file))
18+
commitNum := strings.TrimSuffix(string(file), "\n")
19+
message, err := ConvertToMessage(commitNum)
1820
if err != nil {
1921
log.Fatal(err)
2022
return
@@ -29,5 +31,5 @@ func ConvertToMessage(commit string) (string, error) {
2931
return "", err
3032
}
3133

32-
return fmt.Sprintf("This is commit number %d", commitNumber), nil
34+
return fmt.Sprintf("This app is using commit number %d.\n", commitNumber), nil
3335
}

app_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ func TestCalculate(t *testing.T) {
1010
t.Error("Converting to message failed")
1111
}
1212

13-
if message != "This is commit number 1" {
13+
if message != "This app is using commit number 1.\n" {
1414
t.Error("Did not match expected message")
1515
}
1616

ci/demo-pipeline.yml

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
---
2+
resource_types:
3+
- name: semver
4+
type: registry-image
5+
source:
6+
repository: concourse/semver-resource
7+
8+
resources:
9+
- name: app
10+
type: git
11+
source:
12+
uri: git@github.com:clarafu/concourse-demo.git
13+
branch: master
14+
private_key: ((app-repo-key))
15+
16+
- name: version
17+
type: semver
18+
source:
19+
driver: git
20+
uri: git@github.com:clarafu/concourse-demo.git
21+
branch: version
22+
file: version
23+
private_key: ((app-repo-key))
24+
25+
- name: app-pre-release
26+
type: github-release
27+
source:
28+
owner: clarafu
29+
repository: concourse-demo
30+
access_token: ((dummy-user-access-token))
31+
pre-release: true
32+
33+
- name: app-release
34+
type: github-release
35+
source:
36+
owner: clarafu
37+
repository: concourse-demo
38+
access_token: ((dummy-user-access-token))
39+
40+
jobs:
41+
- name: test
42+
plan:
43+
- get: app
44+
trigger: true
45+
- task: test-app
46+
file: app/ci/tasks/test-app.yml
47+
48+
- name: bump-version
49+
plan:
50+
- put: version
51+
params: {bump: major}
52+
53+
- name: build
54+
plan:
55+
- get: version
56+
passed: [bump-version]
57+
- get: app
58+
passed: [test]
59+
trigger: true
60+
- task:
61+
file: app/ci/tasks/build-app.yml
62+
- put: app-pre-release
63+
params:
64+
name: version/version
65+
tag: version/version
66+
globs:
67+
- built-app/app
68+
69+
- name: deploy
70+
plan:
71+
- get: version
72+
passed: [build]
73+
- get: app-pre-release
74+
passed: [build]
75+
- put: app-release
76+
params:
77+
name: version/version
78+
tag: version/version
79+
globs:
80+
- app-pre-release/app
81+

ci/tasks/build-app.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
platform: linux
3+
4+
image_resource:
5+
type: registry-image
6+
source: {repository: golang}
7+
8+
inputs:
9+
- name: app
10+
11+
outputs:
12+
- name: built-app
13+
14+
run:
15+
path: app/ci/tasks/scripts/build-app

ci/tasks/scripts/build-app

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
#!/bin/bash
2+
3+
set -e -x
4+
5+
cd app/
6+
go build app.go
7+
mv app ../built-app/

ci/tasks/scripts/test-app

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/bin/bash
2+
3+
set -e -x
4+
5+
cd app/
6+
go test

ci/tasks/test-app.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
platform: linux
3+
4+
image_resource:
5+
type: registry-image
6+
source: {repository: golang}
7+
8+
inputs:
9+
- name: app
10+
11+
run:
12+
path: app/ci/tasks/scripts/test-app

scripts/add_commit

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/bin/bash
2+
3+
set -ex
4+
5+
cd $(dirname $0)/..
6+
7+
num=$(($( cat commit.txt) + 1))
8+
echo $num > commit.txt
9+
10+
git config user.email "dummy@example.com"
11+
git config user.name "Dummy User"
12+
git add commit.txt
13+
git ci -m "increment commit to $num"
14+
15+
ssh-agent bash -c 'ssh-add scripts/app_private_key; git push origin master'

0 commit comments

Comments
 (0)