summaryrefslogtreecommitdiffstats
path: root/coin/instructions/debian/debian_build_module.yaml
blob: 0aa239e1c6cf04267bfc13db8dc9263d897946be (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
119
120
121
122
123
124
125
type: Group
enable_if:
  condition: property
  property: features
  contains_value: DebianPackaging
instructions:
  - !include "{{qt/qtbase}}/debian/prepare_debian_env.yaml"
  - type: EnvironmentVariable
    variableName: GIT_SSH_COMMAND
    variableValue: "ssh -o StrictHostKeyChecking=no"
  - type: ChangeDirectory
    directory: "{{.AgentWorkingDir}}"
  - type: MakeDirectory
    directory: output/debian_packages
  - type: MakeDirectory
    directory: debian_packages
  - type: ExecuteCommand
    command: "git clone git@git.qt.io:tqtc-debian/package_generator.git"
    maxTimeInSeconds: 900
    maxTimeBetweenOutput: 900
    userMessageOnFailure: "Failed to clone package generator repo"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"
  - type: ExecuteCommand
    command: "git clone -b 6.6 git@git.qt.io:tqtc-debian/qt6-{{.Env.TESTED_MODULE_PLAIN_COIN}}.git"
    maxTimeInSeconds: 900
    maxTimeBetweenOutput: 900
    userMessageOnFailure: "Failed to clone debian packaging repo"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"
  - type: ChangeDirectory
    directory: "qt6-{{.Env.TESTED_MODULE_PLAIN_COIN}}"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"
  - type: ExecuteCommand
    command: "git checkout {{.Env.DEBIAN_RULES_REF}}"
    maxTimeInSeconds: 900
    maxTimeBetweenOutput: 900
    userMessageOnFailure: "Failed to checkout debian rules branch"
    disable_if:
      condition: or
      conditions:
      - condition: runtime
        env_var:  DEBIAN_RULES_REF
        equals_value: null
      - condition: runtime
        env_var:  COIN_SKIP_DEBIAN
        contains_value: "MISSING_DEBIAN_INST"
  - type: ChangeDirectory
    directory: "{{.AgentWorkingDir}}"
  - type: ExecuteCommand
    command: "wget -q {{.CoinDownloadURL}}/{{.Env.MODULE_SOURCES_RELATIVE_STORAGE_PATH}}"
    maxTimeInSeconds: 900
    maxTimeBetweenOutput: 900
    userMessageOnFailure: "Failed get sources"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"
  - type: ExecuteCommand
    command: "mv sources_unix.tar.gz qt-{{.Env.QT_REPO_MODULE_VERSION}}-{{.Env.TESTED_MODULE_PLAIN_COIN}}-src_{{.Env.QT_REPO_MODULE_VERSION}}.orig.tar.gz"
    maxTimeInSeconds: 900
    maxTimeBetweenOutput: 900
    userMessageOnFailure: "Failed rename src pkg"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"
  - type: ChangeDirectory
    directory: "{{.AgentWorkingDir}}/qt6-{{.Env.TESTED_MODULE_PLAIN_COIN}}"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"


  # rc is required currently by the script
  - type: ExecuteCommand
    command: "../package_generator/generate_packaging.sh --qt-version {{.Env.QT_REPO_MODULE_VERSION}} --deb-rev 1 --release tqtc-focal"
    maxTimeInSeconds: 900
    maxTimeBetweenOutput: 900
    userMessageOnFailure: "Failed to generate pkg"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"
  - type: ChangeDirectory
    directory: "{{.AgentWorkingDir}}"
  - type: ExecuteCommand
    command: "dpkg-source -b qt6-{{.Env.TESTED_MODULE_PLAIN_COIN}}"
    maxTimeInSeconds: 900
    maxTimeBetweenOutput: 900
    userMessageOnFailure: "Failed dpkg-source"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"
  - type: ExecuteCommand
    command: ["sbuild",
      "--build-dep-resolver=apt",
      "-sAd", "{{.Env.COIN_TARGET_DIST}}",
      "-c", "{{.Env.COIN_SBUILD_CHROOT}}",
      "--build-dir", "output/debian_packages",
      "--extra-repository={{.Env.COIN_EXTRA_DEBIAN_REPO}}",
      "--extra-package={{.Env.COIN_EXTRA_DEBIAN_PACKAGES}}",
      "--extra-package={{.AgentWorkingDir}}/debian_packages/",
      "qt-{{.Env.QT_REPO_MODULE_VERSION}}-{{.Env.TESTED_MODULE_PLAIN_COIN}}-src_{{.Env.QT_REPO_MODULE_VERSION}}-1.dsc"]
    maxTimeInSeconds: 18000
    maxTimeBetweenOutput: 18000
    userMessageOnFailure: "Failed build debian packages"
    disable_if:
      condition: runtime
      env_var:  COIN_SKIP_DEBIAN
      contains_value: "MISSING_DEBIAN_INST"
  - type: UploadArtifact
    archiveDirectory: "{{.AgentWorkingDir}}/output"
    transferType: UploadModuleBuildArtifact
    maxTimeInSeconds: 1200
    maxTimeBetweenOutput: 1200