Skip to content

Commit 27f82c5

Browse files
Merge pull request #20 from evilmonkeyinc/test/pipeline
test: try to only run job on code change
2 parents 31a5baf + f5aefe8 commit 27f82c5

File tree

3 files changed

+25
-30
lines changed

3 files changed

+25
-30
lines changed

.github/workflows/pull_request.yaml

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,20 @@ jobs:
5050
golint -set_exit_status=1 ./...
5151
release_check:
5252
runs-on: ubuntu-latest
53-
outputs:
54-
changes: ${{ steps.changes.outputs.changes}}
5553
steps:
5654
- name: Checkout repository
5755
uses: actions/checkout@v2
5856
with:
59-
fetch-depth: 2
60-
- name: Get changed files
61-
id: changes
57+
fetch-depth: 0
58+
- name: Check Diff
59+
uses: technote-space/get-diff-action@v6
60+
with:
61+
PATTERNS: |
62+
+**/*.go
63+
!**/*_test.go
64+
FILES: |
65+
go.mod
66+
- name: Output Diff
67+
if: env.GIT_DIFF
6268
run: |
63-
echo "::set-output name=changes::$(git diff --name-only --diff-filter=ACMRT ${{ github.event.pull_request.base.sha }} ${{ github.sha }} | grep 'go.mod\|.go$' | grep -v _test.go$ | xargs)"
64-
echo ${{ steps.changes.outputs.changes}}
65-
69+
echo ${{ env.GIT_DIFF }}

.github/workflows/push_main.yaml

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -72,21 +72,27 @@ jobs:
7272
release_check:
7373
runs-on: ubuntu-latest
7474
needs: [test, lint]
75-
outputs:
76-
changes: ${{ steps.changes.outputs.changes}}
7775
steps:
7876
- name: Checkout repository
7977
uses: actions/checkout@v2
8078
with:
81-
fetch-depth: 2
82-
- name: Get changed files
83-
id: changes
79+
fetch-depth: 0
80+
- name: Check Diff
81+
uses: technote-space/get-diff-action@v6
82+
with:
83+
PATTERNS: |
84+
+**/*.go
85+
!**/*_test.go
86+
FILES: |
87+
go.mod
88+
- name: Output Diff
89+
if: env.GIT_DIFF
8490
run: |
85-
echo "::set-output name=changes::$(git diff --name-only --diff-filter=ACMRT origin/main origin/${GITHUB_HEAD_REF} | grep 'go.mod\|.go$' | grep -v _test.go$ | xargs)"
91+
echo ${{ env.GIT_DIFF }}
8692
release:
8793
runs-on: ubuntu-latest
8894
needs: [release_check]
89-
if: ${{needs.release_check.outputs.changes}}
95+
if: env.GIT_DIFF
9096
outputs:
9197
version: ${{ steps.release.outputs.version }}
9298
steps:

options_test.go

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import (
1212
var _ Option = OptionFunction(func(selector *Selector) error { return nil })
1313

1414
func Test_OptionFunction(t *testing.T) {
15-
1615
t.Run("nil", func(t *testing.T) {
1716
called := false
1817
option := OptionFunction(func(selector *Selector) error {
@@ -23,7 +22,6 @@ func Test_OptionFunction(t *testing.T) {
2322
assert.Nil(t, err)
2423
assert.True(t, called)
2524
})
26-
2725
t.Run("error", func(t *testing.T) {
2826
called := false
2927
option := OptionFunction(func(selector *Selector) error {
@@ -34,24 +32,19 @@ func Test_OptionFunction(t *testing.T) {
3432
assert.EqualError(t, err, "fail")
3533
assert.True(t, called)
3634
})
37-
3835
}
3936

4037
func Test_ScriptEngine(t *testing.T) {
41-
4238
t.Run("first", func(t *testing.T) {
43-
4439
engine := &testScriptEngine{value: 1}
4540
option := ScriptEngine(engine)
4641
selector := &Selector{}
4742

4843
err := option.Apply(selector)
4944
assert.Nil(t, err)
5045
assert.Equal(t, engine, selector.engine)
51-
5246
})
5347
t.Run("second", func(t *testing.T) {
54-
5548
engine1 := &testScriptEngine{value: 1}
5649
engine2 := &testScriptEngine{value: 2}
5750

@@ -68,26 +61,20 @@ func Test_ScriptEngine(t *testing.T) {
6861

6962
assert.Equal(t, engine1, selector.engine)
7063
assert.NotEqual(t, engine2, selector.engine)
71-
7264
})
73-
7465
}
7566

7667
func Test_QueryOptions(t *testing.T) {
77-
7868
t.Run("first", func(t *testing.T) {
79-
8069
input := &option.QueryOptions{AllowMapReferenceByIndex: true, AllowStringReferenceByIndex: true}
8170
option := QueryOptions(input)
8271
selector := &Selector{}
8372

8473
err := option.Apply(selector)
8574
assert.Nil(t, err)
8675
assert.Equal(t, input, selector.Options)
87-
8876
})
8977
t.Run("second", func(t *testing.T) {
90-
9178
input1 := &option.QueryOptions{AllowMapReferenceByIndex: true, AllowStringReferenceByIndex: true}
9279
input2 := &option.QueryOptions{AllowMapReferenceByIndex: false, AllowStringReferenceByIndex: false}
9380

@@ -104,7 +91,5 @@ func Test_QueryOptions(t *testing.T) {
10491

10592
assert.Equal(t, input1, selector.Options)
10693
assert.NotEqual(t, input2, selector.Options)
107-
10894
})
109-
11095
}

0 commit comments

Comments
 (0)