1
1
name : SnoopCompile
2
2
3
-
4
- # Edit based on your repository.
5
3
on :
6
4
push :
7
5
branches :
8
- # - 'master'
6
+ # - 'master' # NOTE: uncomment to run the bot only on pushes to master
9
7
10
8
defaults :
11
9
run :
@@ -17,33 +15,42 @@ jobs:
17
15
runs-on : ${{ matrix.os }}
18
16
strategy :
19
17
fail-fast : false
18
+
20
19
matrix :
21
- # Uncomment other versions if you want multi-version signatures (should exactly match BotConfig.version):
22
- version :
20
+ version : # NOTE: if not using `yml_path`, these should match the version in `BotConfig`
21
+ - ' nightly'
22
+ - ' 1.5.3'
23
23
- ' 1.4.2'
24
- # - '1.3.1'
24
+ - ' 1.3.1'
25
25
- ' 1.2.0'
26
- os :
26
+ os : # NOTE: if not using `yml_path`, these should match the os in `BotConfig`
27
27
- ubuntu-latest
28
28
- windows-latest
29
29
- macos-latest
30
30
arch :
31
31
- x64
32
+
32
33
steps :
33
34
- uses : actions/checkout@v2
34
35
- uses : julia-actions/setup-julia@latest
35
36
with :
36
37
version : ${{ matrix.version }}
38
+
37
39
- name : Install dependencies
38
40
run : |
39
41
julia --project -e 'using Pkg; Pkg.instantiate();'
40
- julia -e 'using Pkg; Pkg.add(PackageSpec(url = "https://github.com/aminya/SnoopCompile.jl", rev = "multios")); Pkg.develop(PackageSpec(; path=pwd())); using SnoopCompile; SnoopCompile.addtestdep();'
42
+ julia -e 'using Pkg; Pkg.add( PackageSpec(name="CompileBot", version = "1") );
43
+ Pkg.develop(PackageSpec(; path=pwd()));
44
+ using CompileBot; CompileBot.addtestdep();'
45
+
41
46
- name : Generating precompile files
42
- run : julia --project -e 'include("deps/SnoopCompile/snoop_bot.jl")'
47
+ run : julia --project -e 'include("deps/SnoopCompile/snoop_bot.jl")' # NOTE: notice the path
48
+
43
49
- name : Running Benchmark
44
- run : julia --project -e 'include("deps/SnoopCompile/snoop_bench.jl")'
50
+ run : julia --project -e 'include("deps/SnoopCompile/snoop_bench.jl")' # NOTE: optional, if have benchmark file
51
+
45
52
- name : Upload all
46
- uses : actions/upload-artifact@v2
53
+ uses : actions/upload-artifact@v2.0.1
47
54
with :
48
55
path : ./
49
56
@@ -55,23 +62,16 @@ jobs:
55
62
- uses : actions/checkout@v2
56
63
- name : Download all
57
64
uses : actions/download-artifact@v2
58
- - name : Move the content of the directory to the root
59
- run : |
60
- rsync -a artifact/* ./
61
- rm -d -r artifact
62
- - name : Discard unrelated changes
63
- run : |
64
- test -f 'Project.toml' && git checkout -- 'Project.toml'
65
- git ls-files 'Manifest.toml' | grep . && git checkout -- 'Manifest.toml'
66
- (git diff -w --no-color || git apply --cached --ignore-whitespace && git checkout -- . && git reset && git add -p) || echo done
67
- - name : Format precompile_includer.jl
68
- run : julia -e 'using Pkg; Pkg.add("JuliaFormatter"); using JuliaFormatter; format_file("src/precompile_includer.jl")'
65
+
66
+ - name : CompileBot postprocess
67
+ run : julia -e 'using Pkg; Pkg.add( PackageSpec(name="CompileBot", version = "1") );
68
+ using CompileBot; CompileBot.postprocess();'
69
+
69
70
- name : Create Pull Request
70
- uses : peter-evans/create-pull-request@v2
71
+ uses : peter-evans/create-pull-request@v3
71
72
with :
72
73
token : ${{ secrets.GITHUB_TOKEN }}
73
74
commit-message : Update precompile_*.jl file
74
- committer :
Amin Yahyaabadi <[email protected] >
75
75
title : " [AUTO] Update precompiles"
76
76
labels : SnoopCompile
77
77
branch : " SnoopCompile_AutoPR"
0 commit comments