Refactor CI workflow and enable parallelization (#22306)
* Fix flaky tests * Reorganize and consolidate CI workflows * TMP: squash * TMP: recomment
This commit is contained in:
Родитель
3e10c2fc79
Коммит
a790d973a2
|
@ -6,345 +6,10 @@
|
|||
version: 2.1
|
||||
|
||||
references:
|
||||
# We declare the autograph configuration here to be able to fully leverage
|
||||
# Docker executors. This configuration should be kept in sync with the
|
||||
# content of `scripts/autograph_localdev_config.yaml`, which is used for
|
||||
# local dev. Sadly, we cannot "include" this file here.
|
||||
autograph_config: &autograph_config |
|
||||
# Note: Most of the configuration here got copied from
|
||||
# https://github.com/mozilla-services/autograph/blob/master/autograph.yaml
|
||||
server:
|
||||
# This port should be perfectly free, the upstream default of 8000 is
|
||||
# used by django sometimes so let's not do that.
|
||||
listen: "0.0.0.0:5500"
|
||||
# cache 500k nonces to protect from authorization replay attacks
|
||||
noncecachesize: 10
|
||||
|
||||
# The keys below are testing keys that do not grant any power
|
||||
signers:
|
||||
- id: webextensions-rsa
|
||||
type: xpi
|
||||
# The signing parameters for each type of add-on are 'add-on' are
|
||||
# signed with the OU 'Production' and the provided ID 'extension' are
|
||||
# signed with the OU 'Mozilla Extensions' and the provided ID 'system
|
||||
# add-on' are signed with the OU 'Mozilla Components' and the
|
||||
# provided ID
|
||||
mode: add-on
|
||||
recommendation:
|
||||
path: "mozilla-recommendation.json"
|
||||
certificate: |
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIH0zCCBbugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBvDELMAkGA1UEBhMCVVMx
|
||||
CzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRwwGgYDVQQKExNB
|
||||
bGxpem9tIENvcnBvcmF0aW9uMSAwHgYDVQQLExdBbGxpem9tIEFNTyBEZXZlbG9w
|
||||
bWVudDEYMBYGA1UEAxMPZGV2LmFtby5yb290LmNhMS4wLAYJKoZIhvcNAQkBFh9m
|
||||
b3hzZWMrZGV2YW1vcm9vdGNhQG1vemlsbGEuY29tMB4XDTE3MDMyMTIzNDQwNFoX
|
||||
DTI3MDMxOTIzNDQwNFowgbwxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEWMBQG
|
||||
A1UEBxMNTW91bnRhaW4gVmlldzEcMBoGA1UEChMTQWxsaXpvbSBDb3Jwb3JhdGlv
|
||||
bjEgMB4GA1UECxMXQWxsaXpvbSBBTU8gRGV2ZWxvcG1lbnQxGDAWBgNVBAMTD2Rl
|
||||
di5hbW8ucm9vdC5jYTEuMCwGCSqGSIb3DQEJARYfZm94c2VjK2RldmFtb3Jvb3Rj
|
||||
YUBtb3ppbGxhLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMdX
|
||||
5soUuvWnkVHRHN5BKByrgpuU3QioE8SNT7BwRFeqbOySdvu5ecQAdNUoRbRyFmNB
|
||||
ety2rQM9qw6y8eSe9fufIgrv1sg/xj7vweLmuC8Ob+zo5/iwRQw4JUdXnDjwX3W0
|
||||
auh0QRYfxWGK3hVrP9j1zIJk/yRBornCvXTtn8C/hVSE/PWc6CuV8vTcpyj+TPni
|
||||
Lvulq17NdlX5qgUdn1yougJxnznkwnoIaBYLdAyZJJIUEomiEIxfabjnh8rfSMIw
|
||||
AqmslrC8F73yo4JrCqJPt1ipggfpO3ZAjlEoTMcTUgyqR8B35GyuywWR0XrkJV7N
|
||||
A7BM1qNjLb2to0XQSrGyWA7uPw88LuVk2aUPDE5uNK5Kv//+SGChUn2fDZTsjj3J
|
||||
KY7f39JVwh/nk8ZkApplne8fKPoknW7er2R+rejyBx1+fJjLegKQsATpgKz4LRf4
|
||||
ct34oWSV6QXrZ/KKW+frWoHncy8C+UnCC3cDBKs272yqOvBoGMQTrF5oMn8i/Rap
|
||||
gBbBdwysdJXb+buf/+ZS0PUt7avKFIlXqCNZjG3xotBsTuCL5zAoVKoXJW1FwrcZ
|
||||
pveQuishKWNf9Id+0HaBdDp/vlbrTwXD1zsxfYvYw8wI7NkNO3TQBni5iyG4B1wh
|
||||
oR+Z5AebWuJqVnsJyjPakNiuhKNsO/xTa4TF/ymfAgMBAAGjggHcMIIB2DAPBgNV
|
||||
HRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAWBgNVHSUBAf8EDDAKBggrBgEF
|
||||
BQcDAzAdBgNVHQ4EFgQU2LRpqTdeQ1QlBWNA6fYAqHdpSaUwgekGA1UdIwSB4TCB
|
||||
3oAU2LRpqTdeQ1QlBWNA6fYAqHdpSaWhgcKkgb8wgbwxCzAJBgNVBAYTAlVTMQsw
|
||||
CQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEcMBoGA1UEChMTQWxs
|
||||
aXpvbSBDb3Jwb3JhdGlvbjEgMB4GA1UECxMXQWxsaXpvbSBBTU8gRGV2ZWxvcG1l
|
||||
bnQxGDAWBgNVBAMTD2Rldi5hbW8ucm9vdC5jYTEuMCwGCSqGSIb3DQEJARYfZm94
|
||||
c2VjK2RldmFtb3Jvb3RjYUBtb3ppbGxhLmNvbYIBATBCBglghkgBhvhCAQQENRYz
|
||||
aHR0cHM6Ly9jb250ZW50LXNpZ25hdHVyZS5kZXYubW96YXdzLm5ldC9jYS9jcmwu
|
||||
cGVtME4GCCsGAQUFBwEBBEIwQDA+BggrBgEFBQcwAoYyaHR0cHM6Ly9jb250ZW50
|
||||
LXNpZ25hdHVyZS5kZXYubW96YXdzLm5ldC9jYS9jYS5wZW0wDQYJKoZIhvcNAQEL
|
||||
BQADggIBALqVt54WTkxD5U5fHPRUSZA9rFigoIcrHNrq+gTDd057cBDUWNc0cEHV
|
||||
qaP0zgzqD2bIhV/WWlfMDY3VnB8L2+Vjvu2CEt8/9Kh5x9IgBmZt5VUMuEdmQOyH
|
||||
vA7lz3UI+jmUGcojtLsi+sf4kxDZh3QB3T/wGiHg+K7vXnY7GWEy1Cjfwk/dvbT2
|
||||
ODTb5B3SPGsh75VmfzFGgerzsS71LN4FYBRUklLe8ozqKF8r/jGE2vfDR1Cy09pN
|
||||
oR9ti+zaBiEtMlWJjxYrv7HvuoDR9xLmPxyV6gQbo6NnbudkpNdg5LhbY3WV1IgL
|
||||
TnwJ7aHXgzOZ3w/VsSctg4beZZgYnr81vLKyefWJH1VzCe5XTgwXC1R/afGiVJ0P
|
||||
hA1+T4My9oTaQBsiNYA2keXKJbTKerMTupoLgV/lJjxfF5BfQiy9NL18/bzxqf+J
|
||||
7w4P/4oHt3QCdISAIhlG4ttXfRR8oz6obAb6QYdCf3x9b2/3UXKd3UJ+gwchPjj6
|
||||
InnLK8ig9scn4opVNkBkjlMRsq1yd017eQzLSirpKj3br69qyLoyb/nPNJi7bL1K
|
||||
bf6m5mF5GmKR+Glvq74O8rLQZ3a75v6H+NwOqAlZnWSJmC84R2HHsHPBw+2pExJT
|
||||
E5bRcttRlhEdN4NJ2vWJnOH0DENHy6TEwACINJVx6ftucfPfvOxI
|
||||
-----END CERTIFICATE-----
|
||||
privatekey: |
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
PIDNiTxNecePOmrD+1ivAEXcoL+e1w==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
- id: webextensions-rsa-with-recommendation
|
||||
type: xpi
|
||||
# The signing parameters for each type of add-on are 'add-on' are
|
||||
# signed with the OU 'Production' and the provided ID
|
||||
# 'add-on-with-recommendation' are signed with the OU 'Production'
|
||||
# and the provided ID and add a recommendation file 'extension' are
|
||||
# signed with the OU 'Mozilla Extensions' and the provided ID 'system
|
||||
# add-on' are signed with the OU 'Mozilla Components' and the
|
||||
# provided ID 'hotfix' are signed with the OU 'Production' and the ID
|
||||
# 'firefox-hotfix@mozilla.org'
|
||||
mode: add-on-with-recommendation
|
||||
recommendation:
|
||||
path: "mozilla-recommendation.json"
|
||||
states:
|
||||
recommended: true
|
||||
recommended-android: true
|
||||
verified: true
|
||||
line: true
|
||||
relative_start: 0h
|
||||
duration: 26298h
|
||||
# RSA key gen is slow and CPU intensive, so we can optionally
|
||||
# pregenerate and cache keys with a worker pool
|
||||
rsacacheconfig:
|
||||
numkeys: 25
|
||||
numgenerators: 2
|
||||
generatorsleepduration: 1m
|
||||
fetchtimeout: 100ms
|
||||
statssamplerate: 1m
|
||||
certificate: |
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIH0zCCBbugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBvDELMAkGA1UEBhMCVVMx
|
||||
CzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRwwGgYDVQQKExNB
|
||||
bGxpem9tIENvcnBvcmF0aW9uMSAwHgYDVQQLExdBbGxpem9tIEFNTyBEZXZlbG9w
|
||||
bWVudDEYMBYGA1UEAxMPZGV2LmFtby5yb290LmNhMS4wLAYJKoZIhvcNAQkBFh9m
|
||||
b3hzZWMrZGV2YW1vcm9vdGNhQG1vemlsbGEuY29tMB4XDTE3MDMyMTIzNDQwNFoX
|
||||
DTI3MDMxOTIzNDQwNFowgbwxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEWMBQG
|
||||
A1UEBxMNTW91bnRhaW4gVmlldzEcMBoGA1UEChMTQWxsaXpvbSBDb3Jwb3JhdGlv
|
||||
bjEgMB4GA1UECxMXQWxsaXpvbSBBTU8gRGV2ZWxvcG1lbnQxGDAWBgNVBAMTD2Rl
|
||||
di5hbW8ucm9vdC5jYTEuMCwGCSqGSIb3DQEJARYfZm94c2VjK2RldmFtb3Jvb3Rj
|
||||
YUBtb3ppbGxhLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMdX
|
||||
5soUuvWnkVHRHN5BKByrgpuU3QioE8SNT7BwRFeqbOySdvu5ecQAdNUoRbRyFmNB
|
||||
ety2rQM9qw6y8eSe9fufIgrv1sg/xj7vweLmuC8Ob+zo5/iwRQw4JUdXnDjwX3W0
|
||||
auh0QRYfxWGK3hVrP9j1zIJk/yRBornCvXTtn8C/hVSE/PWc6CuV8vTcpyj+TPni
|
||||
Lvulq17NdlX5qgUdn1yougJxnznkwnoIaBYLdAyZJJIUEomiEIxfabjnh8rfSMIw
|
||||
AqmslrC8F73yo4JrCqJPt1ipggfpO3ZAjlEoTMcTUgyqR8B35GyuywWR0XrkJV7N
|
||||
A7BM1qNjLb2to0XQSrGyWA7uPw88LuVk2aUPDE5uNK5Kv//+SGChUn2fDZTsjj3J
|
||||
KY7f39JVwh/nk8ZkApplne8fKPoknW7er2R+rejyBx1+fJjLegKQsATpgKz4LRf4
|
||||
ct34oWSV6QXrZ/KKW+frWoHncy8C+UnCC3cDBKs272yqOvBoGMQTrF5oMn8i/Rap
|
||||
gBbBdwysdJXb+buf/+ZS0PUt7avKFIlXqCNZjG3xotBsTuCL5zAoVKoXJW1FwrcZ
|
||||
pveQuishKWNf9Id+0HaBdDp/vlbrTwXD1zsxfYvYw8wI7NkNO3TQBni5iyG4B1wh
|
||||
oR+Z5AebWuJqVnsJyjPakNiuhKNsO/xTa4TF/ymfAgMBAAGjggHcMIIB2DAPBgNV
|
||||
HRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAWBgNVHSUBAf8EDDAKBggrBgEF
|
||||
BQcDAzAdBgNVHQ4EFgQU2LRpqTdeQ1QlBWNA6fYAqHdpSaUwgekGA1UdIwSB4TCB
|
||||
3oAU2LRpqTdeQ1QlBWNA6fYAqHdpSaWhgcKkgb8wgbwxCzAJBgNVBAYTAlVTMQsw
|
||||
CQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEcMBoGA1UEChMTQWxs
|
||||
aXpvbSBDb3Jwb3JhdGlvbjEgMB4GA1UECxMXQWxsaXpvbSBBTU8gRGV2ZWxvcG1l
|
||||
bnQxGDAWBgNVBAMTD2Rldi5hbW8ucm9vdC5jYTEuMCwGCSqGSIb3DQEJARYfZm94
|
||||
c2VjK2RldmFtb3Jvb3RjYUBtb3ppbGxhLmNvbYIBATBCBglghkgBhvhCAQQENRYz
|
||||
aHR0cHM6Ly9jb250ZW50LXNpZ25hdHVyZS5kZXYubW96YXdzLm5ldC9jYS9jcmwu
|
||||
cGVtME4GCCsGAQUFBwEBBEIwQDA+BggrBgEFBQcwAoYyaHR0cHM6Ly9jb250ZW50
|
||||
LXNpZ25hdHVyZS5kZXYubW96YXdzLm5ldC9jYS9jYS5wZW0wDQYJKoZIhvcNAQEL
|
||||
BQADggIBALqVt54WTkxD5U5fHPRUSZA9rFigoIcrHNrq+gTDd057cBDUWNc0cEHV
|
||||
qaP0zgzqD2bIhV/WWlfMDY3VnB8L2+Vjvu2CEt8/9Kh5x9IgBmZt5VUMuEdmQOyH
|
||||
vA7lz3UI+jmUGcojtLsi+sf4kxDZh3QB3T/wGiHg+K7vXnY7GWEy1Cjfwk/dvbT2
|
||||
ODTb5B3SPGsh75VmfzFGgerzsS71LN4FYBRUklLe8ozqKF8r/jGE2vfDR1Cy09pN
|
||||
oR9ti+zaBiEtMlWJjxYrv7HvuoDR9xLmPxyV6gQbo6NnbudkpNdg5LhbY3WV1IgL
|
||||
TnwJ7aHXgzOZ3w/VsSctg4beZZgYnr81vLKyefWJH1VzCe5XTgwXC1R/afGiVJ0P
|
||||
hA1+T4My9oTaQBsiNYA2keXKJbTKerMTupoLgV/lJjxfF5BfQiy9NL18/bzxqf+J
|
||||
7w4P/4oHt3QCdISAIhlG4ttXfRR8oz6obAb6QYdCf3x9b2/3UXKd3UJ+gwchPjj6
|
||||
InnLK8ig9scn4opVNkBkjlMRsq1yd017eQzLSirpKj3br69qyLoyb/nPNJi7bL1K
|
||||
bf6m5mF5GmKR+Glvq74O8rLQZ3a75v6H+NwOqAlZnWSJmC84R2HHsHPBw+2pExJT
|
||||
E5bRcttRlhEdN4NJ2vWJnOH0DENHy6TEwACINJVx6ftucfPfvOxI
|
||||
-----END CERTIFICATE-----
|
||||
privatekey: |
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQDHV+bKFLr1p5FR
|
||||
0RzeQSgcq4KblN0IqBPEjU+wcERXqmzsknb7uXnEAHTVKEW0chZjQXrctq0DPasO
|
||||
svHknvX7nyIK79bIP8Y+78Hi5rgvDm/s6Of4sEUMOCVHV5w48F91tGrodEEWH8Vh
|
||||
it4Vaz/Y9cyCZP8kQaK5wr107Z/Av4VUhPz1nOgrlfL03Kco/kz54i77patezXZV
|
||||
+aoFHZ9cqLoCcZ855MJ6CGgWC3QMmSSSFBKJohCMX2m454fK30jCMAKprJawvBe9
|
||||
8qOCawqiT7dYqYIH6Tt2QI5RKEzHE1IMqkfAd+RsrssFkdF65CVezQOwTNajYy29
|
||||
raNF0EqxslgO7j8PPC7lZNmlDwxObjSuSr///khgoVJ9nw2U7I49ySmO39/SVcIf
|
||||
55PGZAKaZZ3vHyj6JJ1u3q9kfq3o8gcdfnyYy3oCkLAE6YCs+C0X+HLd+KFklekF
|
||||
62fyilvn61qB53MvAvlJwgt3AwSrNu9sqjrwaBjEE6xeaDJ/Iv0WqYAWwXcMrHSV
|
||||
2/m7n//mUtD1Le2ryhSJV6gjWYxt8aLQbE7gi+cwKFSqFyVtRcK3Gab3kLorISlj
|
||||
X/SHftB2gXQ6f75W608Fw9c7MX2L2MPMCOzZDTt00AZ4uYshuAdcIaEfmeQHm1ri
|
||||
alZ7Ccoz2pDYroSjbDv8U2uExf8pnwIDAQABAoICADf7eqgD3GGC1q/Yfzf3qnEq
|
||||
xXo1+0EkGrEXUmrljHvmM8LYeyvEcerWifkW30SGybzENeHoN3xyhCiTnpUrAz/P
|
||||
9/qEUphYOK+SG6xCSTWF427wFb1km2+MEQQRGaFv+A8RRPjVNTYmZAM5wZbYUMz4
|
||||
cp+oB3NCL5Xll9lPpo61+pa65mN/1j/vU5TqptM/X5TJrZIke5UbNIF+pP3czNVz
|
||||
2RE4oZPbp7YnyDtwqf2jwH55vp8CcY1KemFgPGWAAWnvm7/U5Vjq6ewBSWQl9Y2R
|
||||
v5bZu9fG61kRViZ6n91EksVVyOLHiNHw4LlGs0LE8a3G+6M2YQzvnHfpXLINhfwU
|
||||
SZ6BWAJdknVsu6eesYoC08+nyikkq/A3BVD65pT5C9VsmUPbqqpGSYZmAuFgsf9m
|
||||
zdyKVH4fOPx82DqSZEHZBojg3s5K141DmPp6o0OBX8Ydgfkg2sWXuNi/noBDvh9O
|
||||
FXWN2IcgK0dET3pX4xFei0QuZgglDp3VyVVSCSUPsOwecZ2XTjtBZPCQVpp3r+QV
|
||||
LyecFudQ94Ki/0R+M4CrE/mPApDvq+pTjYKFZ10YWtGIdguXq5BVZIMZfZzwIPWN
|
||||
HdoaFnXRTXTlR4pLIM2nlOvyZmSMo0x6nzUMVGdv4Km9pxi6ZKAgAt4DkbCF9mt0
|
||||
QG8RpGJhiIch4kgKFmqxAoIBAQDw4X9Fp9t4f2UiessUDYxLyAtq4acu4ahup5Eb
|
||||
vlDZPf9gInvz5q9aFHtYgtjTlH449f+EB4isKQscVMysgrJK+7z1IXXMm0sg44wT
|
||||
F4oV+kvg3KpAridRHyE456RvCPqXYzty6ywJ9B7Zf2oCvd40JUOTm8z11K4COLut
|
||||
rFIW/24PJA1CWudY/EgzD164k6379On0KryA77iKEZMUztBfHm/bdO8J/zmp7g+E
|
||||
FS2TCBzR4LpN0uhBwp9wh4rVr74LrPDnQJVZKgeFd24UHEtmcVprAFNUexb2yy1s
|
||||
vxnHsRPmv5eF7ED1Wlz2K+7LUWqibYOrjeCrS85+CEcey0ApAoIBAQDT2vmbHosb
|
||||
Qr6ZENt6UX6n0RF8i4g3G4qhucr5hEMQs4H2J8SrUM68QT0GVY0GoDW6f79Pcyr0
|
||||
W1tm7qbAOm1Iv4uNYVL1qgpq1GnD5qpWSACGsVSE3OGELlNaVz8fgVdz6zT+rU2A
|
||||
tp2t795UlrvaLgFI4wITqJF3LoTfy2MZu8JYCzlKM5pZksmEmJfR0RDAot2grtD3
|
||||
H5A+PZfUIZ/8BhmdaOAv5i647unfVF6UpPYejZ0rb67oEazxdeIHK3aD5AjurdsO
|
||||
UpW/PMwsbaltp4iI7hvUfRX7Afb5fPXIhv9pHh1xWYl3djUNWmFoiMMP4tuxpOBo
|
||||
y+T4maQaiDSHAoIBADrlZ9EIMclMnNXJYE4O4fbFesUvV0lHM3+ayQgXiH0Vg5Nl
|
||||
2xjPlqBX0bDajVluPU6AF3GYxfoSLv1GXqTvb9iVpKXrAHp+nef0uxMP9ltZT6Qz
|
||||
UA1wh3x2OBFJ0hK0B1FsmeSHS8VDQye615jEA8iMM/GrbnnM/p7ccEcOkyO8YJSj
|
||||
I/rNbzN6u8yAPZCzyx6Hy4w/xsdf1acslOHJj3kyX/cwqCGxnc/GvVR2OSZyHVnT
|
||||
sLnGj7NEeudwvKlyxuzj5CMmz111wVEI2olgQa9Sl+EBu140mnDNTNYCA7OnwE3z
|
||||
GoFMOrXC2mf2ZfSge4orbL5Nellnt51pOLp2x8ECggEBALM8Mazw/FOF9mbdgjJM
|
||||
PFGSaa7rBcVJwdHttDHBmlPI6wzsvFEMPru6nfx76KJQbORqK9r13sN5fyzof59m
|
||||
TwsbMt/cFSnOQJ39M7YPstDofbl20cDOduUzpEVsRvVKokhqGB3XVRiuZ1y+8WSz
|
||||
Wh7OiTu3AwzKsrcYXkZQdnlRBq0iYcfLPKzHqUJLLzbOH9Q6djL5c8V/qLNfvNI1
|
||||
2HqKVqV8Ex+zKJhBWRAe+x3bKnbS7MPQ6zNfsOdgCmhydwRCquPzpr7JU/PFZh+4
|
||||
b31cHgFrIZR2d2AzW1XcSLzsqa2vUs2RKOIu2deAPaUI/66zCZeTnGBNEFza76Ga
|
||||
1oUCggEAA38oXcnputwL103SeD8+uwHjtTf183Rucr+Ryqz6GymiWjlzELqu7TRd
|
||||
yadAaNg9CuXmYS33Jtk/UNS0k9FvYqGTR+SBXIZr6nt9ZFd0SNlQkwkAQCsuekEs
|
||||
nJlmUZax7DxXMgIHMKDboHZYM/MhgzEGSALmhU5LZ76MS17v3NEPxYpVHxjAotxW
|
||||
g03HjWTltS8Bgt6u0KFTGJKEUcfwvWKZtjk5Fc1heZ49zh1nU3zo9C/h8iiijTy2
|
||||
s/YksP6cxveae4b7soN4rD/vnfsmKcG+DnTf6B8Zbm6tI2TneYOfFSCryp+yDnaJ
|
||||
PIDNiTxNecePOmrD+1ivAEXcoL+e1w==
|
||||
-----END PRIVATE KEY-----
|
||||
authorizations:
|
||||
- id: alice
|
||||
key: fs5wgcer9qj819kfptdlp8gm227ewxnzvsuj9ztycsx08hfhzu
|
||||
signers:
|
||||
- webextensions-rsa
|
||||
- id: bob
|
||||
key: 9vh6bhlc10y63ow2k4zke7k0c3l9hpr8mo96p92jmbfqngs9e7d
|
||||
signers:
|
||||
- webextensions-rsa-with-recommendation
|
||||
###########################################################################
|
||||
#
|
||||
# The autograph configuration ends here.
|
||||
#
|
||||
###########################################################################
|
||||
|
||||
variables:
|
||||
- &working-directory "~/addons-server"
|
||||
|
||||
docker-images:
|
||||
# These versions should try to match what we run in production.
|
||||
# Note that the cimg/python:3.11-node convenience image provides
|
||||
# nodejs latest lts, which we need to build assets and run the linter.
|
||||
- &python "cimg/python:3.11-node"
|
||||
- &redis "redis:6.2"
|
||||
- &memcached "memcached:1.4"
|
||||
- &mysql "mysql:8.0.28"
|
||||
|
||||
mysql-config: &mysql-config
|
||||
environment:
|
||||
MYSQL_ALLOW_EMPTY_PASSWORD: true
|
||||
MYSQL_DATABASE: olympia
|
||||
|
||||
defaults: &defaults
|
||||
working_directory: &working-directory
|
||||
docker:
|
||||
- image: *python
|
||||
|
||||
defaults-with-services: &defaults-with-services
|
||||
<<: *defaults
|
||||
docker:
|
||||
- image: *python
|
||||
# Below are services this project depends on. In addition to these
|
||||
# services, we also need autograph and elasticsearch but not all the
|
||||
# time, hence the presence of other `defaults-with-*` references.
|
||||
#
|
||||
# Most settings below should be kept in sync with `docker-compose.yml`.
|
||||
- image: *redis
|
||||
- image: *memcached
|
||||
- image: *mysql
|
||||
<<: *mysql-config
|
||||
|
||||
defaults-with-elasticsearch: &defaults-with-elasticsearch
|
||||
<<: *defaults
|
||||
docker:
|
||||
- image: *python
|
||||
- image: *redis
|
||||
- image: *memcached
|
||||
- image: *mysql
|
||||
<<: *mysql-config
|
||||
- image: docker.elastic.co/elasticsearch/elasticsearch:7.17.3
|
||||
environment:
|
||||
# Disable all xpack related features to avoid unrelated logging in
|
||||
# docker logs. https://github.com/mozilla/addons-server/issues/8887
|
||||
xpack.security.enabled: false
|
||||
xpack.monitoring.enabled: false
|
||||
xpack.graph.enabled: false
|
||||
xpack.watcher.enabled: false
|
||||
discovery.type: single-node
|
||||
cluster.name: default-cluster
|
||||
ES_JAVA_OPTS: -Xms256m -Xmx256m
|
||||
|
||||
defaults-with-autograph: &defaults-with-autograph
|
||||
<<: *defaults
|
||||
docker:
|
||||
- image: *python
|
||||
- image: *redis
|
||||
- image: *memcached
|
||||
- image: *mysql
|
||||
<<: *mysql-config
|
||||
- image: mozilla/autograph:3.3.2
|
||||
command: bash -c 'echo -e "$AUTOGRAPH_CONFIG" > amo_config.yaml && cat amo_config.yaml && /go/bin/autograph -c amo_config.yaml'
|
||||
environment:
|
||||
AUTOGRAPH_CONFIG: *autograph_config
|
||||
|
||||
defaults-release: &defaults-release
|
||||
machine:
|
||||
image: ubuntu-2004:current
|
||||
working_directory: &working-directory
|
||||
working_directory: "~/addons-server"
|
||||
|
||||
commands:
|
||||
make_release:
|
||||
|
@ -404,226 +69,7 @@ commands:
|
|||
command: |
|
||||
cat ${BUILDX_BAKE_METADATA_FILE} | jq -r '.web."containerimage.digest"'
|
||||
|
||||
better_checkout:
|
||||
description: circle ci checkout step on steroids
|
||||
parameters:
|
||||
clone_options:
|
||||
type: string
|
||||
default: --depth=1
|
||||
description: git clone options
|
||||
fetch_options:
|
||||
type: string
|
||||
default: --depth=10
|
||||
description: git fetch options
|
||||
steps:
|
||||
- run:
|
||||
name: checkout
|
||||
command: |
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
# Workaround old docker images with incorrect $HOME
|
||||
# check https://github.com/docker/docker/issues/2968 for details
|
||||
if [ "${HOME}" = "/" ]
|
||||
then
|
||||
export HOME=$(getent passwd $(id -un) | cut -d: -f6)
|
||||
fi
|
||||
|
||||
export SSH_CONFIG_DIR="$HOME/.ssh"
|
||||
|
||||
echo "Using SSH Config Dir $SSH_CONFIG_DIR"
|
||||
|
||||
mkdir -p "$SSH_CONFIG_DIR"
|
||||
|
||||
echo 'github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk=' >> "$SSH_CONFIG_DIR/known_hosts"
|
||||
|
||||
(umask 077; touch "$SSH_CONFIG_DIR/id_rsa")
|
||||
chmod 0600 "$SSH_CONFIG_DIR/id_rsa"
|
||||
(cat $CHECKOUT_KEY > "$SSH_CONFIG_DIR/id_rsa")
|
||||
|
||||
export GIT_SSH_COMMAND='ssh -i $SSH_CONFIG_DIR/id_rsa -o UserKnownHostsFile=$SSH_CONFIG_DIR/known_hosts'
|
||||
|
||||
# use git+ssh instead of https
|
||||
git config --global url."ssh://git@github.com".insteadOf "https://github.com" || true
|
||||
git config --global gc.auto 0 || true
|
||||
|
||||
if [ -e .git ]
|
||||
then
|
||||
git remote set-url origin "$CIRCLE_REPOSITORY_URL" || true
|
||||
else
|
||||
git clone << parameters.clone_options >> "$CIRCLE_REPOSITORY_URL" .
|
||||
fi
|
||||
|
||||
if [ -n "$CIRCLE_TAG" ]
|
||||
then
|
||||
git fetch << parameters.fetch_options >> --force origin "refs/tags/${CIRCLE_TAG}"
|
||||
elif [[ "$CIRCLE_BRANCH" =~ ^pull\/* ]]
|
||||
then
|
||||
git fetch << parameters.fetch_options >> --force origin "${CIRCLE_BRANCH}/head:remotes/origin/${CIRCLE_BRANCH}"
|
||||
else
|
||||
git fetch << parameters.fetch_options >> --force origin "${CIRCLE_BRANCH}:remotes/origin/${CIRCLE_BRANCH}"
|
||||
fi
|
||||
|
||||
|
||||
if [ -n "$CIRCLE_TAG" ]
|
||||
then
|
||||
git reset --hard "$CIRCLE_SHA1"
|
||||
git checkout -q "$CIRCLE_TAG"
|
||||
elif [ -n "$CIRCLE_BRANCH" ]
|
||||
then
|
||||
git reset --hard "$CIRCLE_SHA1"
|
||||
git checkout -q -B "$CIRCLE_BRANCH"
|
||||
fi
|
||||
|
||||
git reset --hard "$CIRCLE_SHA1"
|
||||
|
||||
setup_container:
|
||||
description: common setup for the primary container
|
||||
parameters:
|
||||
wait_services:
|
||||
type: boolean
|
||||
default: true
|
||||
steps:
|
||||
- better_checkout
|
||||
- run:
|
||||
name: Initial setup
|
||||
command: |
|
||||
curl -sL https://repo.mysql.com/mysql-apt-config_0.8.29-1_all.deb --output mysql-apt-config.deb
|
||||
sudo dpkg -i mysql-apt-config.deb
|
||||
sudo apt-get update -q
|
||||
sudo apt-get install -y gettext pngcrush librsvg2-bin libmysqlclient-dev
|
||||
sudo cp ./docker/etc/mime.types /etc/mime.types
|
||||
sudo touch /addons-server-docker-container
|
||||
- run:
|
||||
name: Install dockerize
|
||||
command: |
|
||||
wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
|
||||
sudo tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
|
||||
rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
|
||||
environment:
|
||||
DOCKERIZE_VERSION: v0.6.1
|
||||
- when:
|
||||
condition: << parameters.wait_services >>
|
||||
steps:
|
||||
- run:
|
||||
name: Wait for redis
|
||||
command: dockerize -wait tcp://localhost:6379 -timeout 1m
|
||||
- run:
|
||||
name: Wait for mysql
|
||||
command: dockerize -wait tcp://localhost:3306 -timeout 1m
|
||||
- run:
|
||||
name: Wait for memcached
|
||||
command: dockerize -wait tcp://localhost:11211 -timeout 1m
|
||||
- run:
|
||||
name: Set environment variables
|
||||
command: |
|
||||
echo export CPUCOUNT=2 >> $BASH_ENV
|
||||
echo export NPM_CONFIG_PREFIX=/deps/ >> $BASH_ENV
|
||||
echo export CC=\"`python -c 'import sysconfig; print(sysconfig.get_config_var("CC"))'`\" >> $BASH_ENV
|
||||
echo export DOCKER_VERSION=branch >> $BASH_ENV
|
||||
echo export DOCKER_COMMIT=$CIRCLE_SHA1 >> $BASH_ENV
|
||||
echo export VERSION_BUILD_URL=$CIRCLE_BUILD_URL >> $BASH_ENV
|
||||
cat $BASH_ENV
|
||||
- run:
|
||||
name: Create .env and version.json files
|
||||
command: |
|
||||
make -f Makefile-os setup
|
||||
- run:
|
||||
name: Install Python and Node dependencies
|
||||
command: |
|
||||
sudo mkdir /deps
|
||||
sudo chown circleci /deps
|
||||
ACTUAL_CIRCLE_WORKING_DIRECTORY="${CIRCLE_WORKING_DIRECTORY/#\~/$HOME}"
|
||||
ln -s ${ACTUAL_CIRCLE_WORKING_DIRECTORY}/package.json /deps/package.json
|
||||
ln -s ${ACTUAL_CIRCLE_WORKING_DIRECTORY}/package-lock.json /deps/package-lock.json
|
||||
make update_deps
|
||||
# should be executed after all python install commands
|
||||
- run: pyenv rehash
|
||||
|
||||
jobs:
|
||||
addons-versions-files-ratings:
|
||||
<<: *defaults-with-services
|
||||
steps:
|
||||
- setup_container
|
||||
- run:
|
||||
command: make test_addons_versions_files_ratings
|
||||
|
||||
amo-lib-locales-and-signing:
|
||||
<<: *defaults-with-autograph
|
||||
steps:
|
||||
- setup_container
|
||||
- run:
|
||||
command: make test_amo_lib_locales_and_signing
|
||||
environment:
|
||||
AUTOGRAPH_SERVER_URL: http://127.0.0.1:5500
|
||||
# After having removed `tox`, we noticed that this job was a lot slower.
|
||||
# The reason seems to be related to pyenv shims, which add a huge
|
||||
# overhead to CLIs like `dennis-cmd`. By updating the path below, we
|
||||
# should use `dennis-cmd` directly instead of the pyenv shim.
|
||||
- run: echo "export PATH=\"$(pyenv prefix)/bin:$PATH\"" >> $BASH_ENV
|
||||
- run: make compile_locales
|
||||
- run:
|
||||
command: make test_needs_locales_compilation
|
||||
|
||||
assets:
|
||||
<<: *defaults-with-services
|
||||
steps:
|
||||
- setup_container
|
||||
- run: make update_assets
|
||||
- run:
|
||||
command: make test_static_assets
|
||||
|
||||
codestyle:
|
||||
<<: *defaults
|
||||
steps:
|
||||
- setup_container:
|
||||
wait_services: false
|
||||
- run: pyenv rehash
|
||||
- run: make lint-codestyle
|
||||
|
||||
localization:
|
||||
<<: *defaults
|
||||
steps:
|
||||
- setup_container:
|
||||
wait_services: false
|
||||
- run : make extract_locales
|
||||
- run: git diff
|
||||
|
||||
devhub:
|
||||
<<: *defaults-with-services
|
||||
steps:
|
||||
- setup_container
|
||||
- run:
|
||||
command: make test_devhub
|
||||
|
||||
main:
|
||||
<<: *defaults-with-services
|
||||
steps:
|
||||
- setup_container
|
||||
- run:
|
||||
command: make test_main
|
||||
|
||||
reviewers-and-zadmin:
|
||||
<<: *defaults-with-autograph
|
||||
steps:
|
||||
- setup_container
|
||||
- run:
|
||||
command: make test_reviewers_and_zadmin
|
||||
environment:
|
||||
AUTOGRAPH_SERVER_URL: http://127.0.0.1:5500
|
||||
- run:
|
||||
name: test_internal_routes_allowed
|
||||
command: make test_internal_routes_allowed
|
||||
es-tests:
|
||||
<<: *defaults-with-elasticsearch
|
||||
steps:
|
||||
- setup_container
|
||||
- run:
|
||||
name: Wait for elasticsearch
|
||||
command: dockerize -wait tcp://localhost:9200 -timeout 1m
|
||||
- run:
|
||||
command: make test_es_tests
|
||||
|
||||
# Add to a workflow, if you want to test the docker build in circleci
|
||||
build-image:
|
||||
<<: *defaults-release
|
||||
|
@ -654,17 +100,8 @@ workflows:
|
|||
version: 2
|
||||
default-workflow:
|
||||
jobs:
|
||||
- addons-versions-files-ratings
|
||||
- amo-lib-locales-and-signing
|
||||
- assets
|
||||
- codestyle
|
||||
- devhub
|
||||
- main
|
||||
# Uncomment if you want to test the docker build
|
||||
# - build-image
|
||||
- reviewers-and-zadmin
|
||||
- es-tests
|
||||
- localization
|
||||
- release-master:
|
||||
filters:
|
||||
branches:
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
name: Verify Docker Image
|
||||
name: CI
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
|
@ -6,7 +6,7 @@ on:
|
|||
- master
|
||||
|
||||
concurrency:
|
||||
group: verify-docker-image-${{ github.ref }}
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
|
@ -28,7 +28,7 @@ jobs:
|
|||
password: ${{ secrets.DOCKER_PASS }}
|
||||
push: true
|
||||
|
||||
docker_config_check:
|
||||
test_make_docker_configuration:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
|
@ -43,7 +43,7 @@ jobs:
|
|||
docker compose version
|
||||
npm exec jest -- ./tests/make --runInBand
|
||||
|
||||
verify_docker_image:
|
||||
check:
|
||||
runs-on: ubuntu-latest
|
||||
needs: build
|
||||
|
||||
|
@ -94,7 +94,7 @@ jobs:
|
|||
run: |
|
||||
make lint-codestyle
|
||||
|
||||
build_docs:
|
||||
docs:
|
||||
runs-on: ubuntu-latest
|
||||
needs: build
|
||||
|
||||
|
@ -118,7 +118,7 @@ jobs:
|
|||
# Keep this in sync with `docs.yml: deploy_docs` where we deploy the artifact
|
||||
name: docs
|
||||
|
||||
extract_locales:
|
||||
locales:
|
||||
runs-on: ubuntu-latest
|
||||
needs: build
|
||||
|
|
@ -1138,6 +1138,9 @@ class TestAdditionalDetailsForm(TestCase):
|
|||
]
|
||||
|
||||
def test_tags_limit(self):
|
||||
for x in range(0, amo.MAX_TAGS + 2):
|
||||
Tag.objects.create(tag_text=f'tag{x}')
|
||||
|
||||
extra = Tag.objects.count() - amo.MAX_TAGS
|
||||
data = {**self.data, 'tags': [tag.tag_text for tag in Tag.objects.all()]}
|
||||
form = forms.AdditionalDetailsForm(
|
||||
|
|
|
@ -2310,6 +2310,7 @@ class TestVerifyEmail(TestCase):
|
|||
with freezegun.freeze_time(self.email_verification.created) as frozen_time:
|
||||
frozen_time.tick(timedelta(days=31))
|
||||
|
||||
self.client.force_login(self.user_profile)
|
||||
response = self.client.get(self.url)
|
||||
doc = pq(response.content)
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче