summaryrefslogtreecommitdiff
path: root/docs/gl_objects/builds.py
blob: 855b7c898a4714fc15340967417bcb79b0fa003f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# var list
variables = gl.project_variables.list(project_id=1)
# or
variables = project.variables.list()
# end var list

# var get
var = gl.project_variables.get(var_key, project_id=1)
# or
var = project.variables.get(var_key)
# end var get

# var create
var = gl.project_variables.create({'key': 'key1', 'value': 'value1'},
                                  project_id=1)
# or
var = project.variables.create({'key': 'key1', 'value': 'value1'})
# end var create

# var update
var.value = 'new_value'
var.save()
# end var update

# var delete
gl.project_variables.delete(var_key)
# or
project.variables.delete()
# or
var.delete()
# end var delete

# trigger list
triggers = gl.project_triggers.list(project_id=1)
# or
triggers = project.triggers.list()
# end trigger list

# trigger get
trigger = gl.project_triggers.get(trigger_token, project_id=1)
# or
trigger = project.triggers.get(trigger_token)
# end trigger get

# trigger create
trigger = gl.project_triggers.create({}, project_id=1)
# or
trigger = project.triggers.create({})
# end trigger create

# trigger delete
gl.project_triggers.delete(trigger_token)
# or
project.triggers.delete()
# or
trigger.delete()
# end trigger delete

# list
builds = gl.project_builds.list(project_id=1)
# or
builds = project.builds.list()
# end list

# commit list
commit = gl.project_commits.get(commit_sha, project_id=1)
builds = commit.builds()
# end commit list

# get
build = gl.project_builds.get(build_id, project_id=1)
# or
project.builds.get(build_id)
# end get

# artifacts
build.artifacts()
# end artifacts

# stream artifacts
class Foo(object):
    def __init__(self):
        self._fd = open('artifacts.zip', 'wb')

    def __call__(self, chunk):
        self._fd.write(chunk)

target = Foo()
build.artifacts(streamed=True, action=target)
del(target)  # flushes data on disk
# end stream artifacts

# keep artifacts
build.keep_artifacts()
# end keep artifacts

# trace
build.trace()
# end trace

# retry
build.cancel()
build.retry()
# end retry

# erase
build.erase()
# end erase

# play
build.play()
# end play

# trigger run
p = gl.projects.get(project_id)
p.trigger_build('master', trigger_token,
                {'extra_var1': 'foo', 'extra_var2': 'bar'})
# end trigger run