Skip to content

Commit ebd28cb

Browse files
committed
Merge branch '3.0-dev' into 3.0
2 parents bfd36df + 1a7c9a7 commit ebd28cb

File tree

395 files changed

+16587
-7354
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

395 files changed

+16587
-7354
lines changed
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# Copyright (c) Microsoft Corporation.
2+
# Licensed under the MIT License.
3+
4+
name: Check Package Update Gate
5+
6+
on:
7+
push:
8+
branches: [main, 2.0*, 3.0*, fasttrack/*]
9+
pull_request:
10+
branches: [main, 2.0*, 3.0*, fasttrack/*]
11+
12+
jobs:
13+
14+
build:
15+
name: Check Package Update Gate
16+
runs-on: ubuntu-latest
17+
steps:
18+
19+
- name: Check out code
20+
uses: actions/checkout@v4
21+
22+
- name: Get base commit for PRs
23+
if: ${{ github.event_name == 'pull_request' }}
24+
run: |
25+
git fetch origin ${{ github.base_ref }}
26+
echo "base_sha=$(git rev-parse origin/${{ github.base_ref }})" >> $GITHUB_ENV
27+
echo "Merging ${{ github.sha }} into ${{ github.base_ref }}"
28+
29+
- name: Get base commit for Pushes
30+
if: ${{ github.event_name == 'push' }}
31+
run: |
32+
git fetch origin ${{ github.event.before }}
33+
echo "base_sha=${{ github.event.before }}" >> $GITHUB_ENV
34+
echo "Merging ${{ github.sha }} into ${{ github.event.before }}"
35+
36+
- name: Get the changed files
37+
run: |
38+
echo "Files changed: '$(git diff-tree --no-commit-id --name-only -r ${{ env.base_sha }} ${{ github.sha }})'"
39+
changed_specs=$(git diff-tree --diff-filter=d --no-commit-id --name-only -r ${{ env.base_sha }} ${{ github.sha }} | { grep "SPECS.*/.*\.spec$" || test $? = 1; })
40+
echo "Files to validate: '${changed_specs}'"
41+
echo "updated-specs=$(echo ${changed_specs})" >> $GITHUB_ENV
42+
43+
- name: Check each spec
44+
run: |
45+
46+
if [[ -z "${{ env.updated-specs }}" ]]; then
47+
echo "No spec files to validate. Exiting."
48+
exit 0
49+
fi
50+
51+
for spec in ${{ env.updated-specs }}
52+
do
53+
echo "Checking '$spec'."
54+
# Expand macros if present
55+
name=$(rpmspec --parse "$spec" | grep -E "^Name:\s*(.*)" | awk '{print $2}')
56+
version=$(rpmspec --parse "$spec" | grep -E "^Version:\s*(.*)" | awk '{print $2}')
57+
58+
# Read from packagelist-gate.csv and iterate each row
59+
# 1st column: package name
60+
# 2nd column: condition (>=, =,'')
61+
# 3rd column: version number
62+
63+
while IFS=, read -r package_name condition version_number; do
64+
if [[ "$name" == "$package_name" ]]; then
65+
case "$condition" in
66+
">=" | "=" )
67+
if [[ ("$condition" == ">=" && "$(printf '%s\n' "$version" "$version_number" | sort -V | head -n1)" == "$version_number") ||
68+
("$condition" == "=" && "$version" == "$version_number") ]]; then
69+
1>&2 echo "**** ERROR ****"
70+
1>&2 echo "Spec '$spec' version '$version' is not allowed in Azure Linux. Error:'$spec $condition $version_number'."
71+
1>&2 echo "**** ERROR ****"
72+
error_found=1
73+
fi
74+
;;
75+
*)
76+
1>&2 echo "**** ERROR ****"
77+
1>&2 echo "Spec $spec is not allowed in Azure Linux"
78+
1>&2 echo "**** ERROR ****"
79+
error_found=1
80+
;;
81+
esac
82+
fi
83+
done < .github/workflows/packagelist-gate.csv
84+
done
85+
86+
if [[ -n $error_found ]]
87+
then
88+
exit 1
89+
fi
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
fdk-aac-free,,
2+
opus,,
3+
opus-file,,
4+
packer,>=,1.10.0
5+
redis,>=,7.4
6+
terraform,>=,1.6.0

.pipelines/containerSourceData/scripts/BuildBaseContainers.sh

Lines changed: 34 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ set -e
4747
# -r "" \
4848
# -q "false"
4949

50-
while getopts ":a:c:k:l:o:p:r:q:" OPTIONS; do
50+
while getopts ":a:c:k:l:o:p:r:q:s:t:u:v:" OPTIONS; do
5151
case ${OPTIONS} in
5252
a ) ACR=$OPTARG;;
5353
c ) CONTAINER_TARBALLS_DIR=$OPTARG;;
@@ -57,6 +57,10 @@ while getopts ":a:c:k:l:o:p:r:q:" OPTIONS; do
5757
p ) PUBLISHING_LEVEL=$OPTARG;;
5858
r ) REPO_PREFIX=$OPTARG;;
5959
q ) PUBLISH_TO_ACR=$OPTARG;;
60+
s ) DISTROLESS_BASE_BUILD=$OPTARG;;
61+
t ) DISTROLESS_DEBUG_BUILD=$OPTARG;;
62+
u ) DISTROLESS_MINIMAL_BUILD=$OPTARG;;
63+
v ) BASE_BUILD=$OPTARG;;
6064

6165
\? )
6266
echo "Error - Invalid Option: -$OPTARG" 1>&2
@@ -86,6 +90,10 @@ function print_inputs {
8690
echo "PUBLISHING_LEVEL -> $PUBLISHING_LEVEL"
8791
echo "PUBLISH_TO_ACR -> $PUBLISH_TO_ACR"
8892
echo "OUTPUT_DIR -> $OUTPUT_DIR"
93+
echo "DISTROLESS_BASE_BUILD -> $DISTROLESS_BASE_BUILD"
94+
echo "DISTROLESS_DEBUG_BUILD -> $DISTROLESS_DEBUG_BUILD"
95+
echo "DISTROLESS_MINIMAL_BUILD -> $DISTROLESS_MINIMAL_BUILD"
96+
echo "BASE_BUILD -> $BASE_BUILD"
8997
}
9098

9199
function validate_inputs {
@@ -104,10 +112,17 @@ function validate_inputs {
104112
DISTROLESS_BASE_TARBALL=$(find "$CONTAINER_TARBALLS_DIR" -name "distroless-base-[0-9.]*.tar.gz")
105113
DISTROLESS_DEBUG_TARBALL=$(find "$CONTAINER_TARBALLS_DIR" -name "distroless-debug-[0-9.]*.tar.gz")
106114
DISTROLESS_MINIMAL_TARBALL=$(find "$CONTAINER_TARBALLS_DIR" -name "distroless-minimal-[0-9.]*.tar.gz")
107-
if [[ (! -f $BASE_TARBALL) || \
108-
(! -f $DISTROLESS_BASE_TARBALL) || \
109-
(! -f $DISTROLESS_DEBUG_TARBALL) || \
110-
(! -f $DISTROLESS_MINIMAL_TARBALL) ]]; then
115+
116+
# Give default values for when the variables are not set (non fasttrack builds).
117+
BASE_BUILD=${BASE_BUILD:-true}
118+
DISTROLESS_BASE_BUILD=${DISTROLESS_BASE_BUILD:-true}
119+
DISTROLESS_DEBUG_BUILD=${DISTROLESS_DEBUG_BUILD:-true}
120+
DISTROLESS_MINIMAL_BUILD=${DISTROLESS_MINIMAL_BUILD:-true}
121+
122+
if [[ ($BASE_BUILD =~ [Tt]rue && ! -f $BASE_TARBALL) || \
123+
($DISTROLESS_BASE_BUILD =~ [Tt]rue && ! -f $DISTROLESS_BASE_TARBALL) || \
124+
($DISTROLESS_DEBUG_BUILD =~ [Tt]rue && ! -f $DISTROLESS_DEBUG_TARBALL) || \
125+
($DISTROLESS_MINIMAL_BUILD =~ [Tt]rue && ! -f $DISTROLESS_MINIMAL_TARBALL) ]]; then
111126
echo "Error - Missing some tarball(s) in $CONTAINER_TARBALLS_DIR"
112127
exit 1
113128
fi
@@ -191,6 +206,10 @@ function initialization {
191206
echo "DISTROLESS_MINIMAL_IMAGE_NAME -> $DISTROLESS_MINIMAL_IMAGE_NAME"
192207
echo "DISTROLESS_DEBUG_IMAGE_NAME -> $DISTROLESS_DEBUG_IMAGE_NAME"
193208
echo "MARINARA_IMAGE_NAME -> $MARINARA_IMAGE_NAME"
209+
echo "DISTROLESS_BASE_BUILD -> $DISTROLESS_BASE_BUILD"
210+
echo "DISTROLESS_DEBUG_BUILD -> $DISTROLESS_DEBUG_BUILD"
211+
echo "DISTROLESS_MINIMAL_BUILD -> $DISTROLESS_MINIMAL_BUILD"
212+
echo "BASE_BUILD -> $BASE_BUILD"
194213

195214
ROOT_FOLDER="$(git rev-parse --show-toplevel)"
196215
EULA_FILE_PATH="$ROOT_FOLDER/.pipelines/container_artifacts/data"
@@ -208,6 +227,12 @@ function docker_build {
208227
local image_full_name=$2
209228
local image_tarball=$3
210229
local dockerfile=$4
230+
local should_build=$5
231+
232+
if [[ $should_build =~ [Ff]alse ]]; then
233+
echo "+++ Skip building image- Fasttrack: $image_full_name"
234+
return
235+
fi
211236

212237
echo "+++ Importing container image: $image_full_name"
213238
local temp_image=${image_full_name}_temp
@@ -308,10 +333,10 @@ function save_container_image {
308333

309334
function build_images {
310335
echo "+++ Build images"
311-
docker_build $BASE "$BASE_IMAGE_NAME" "$BASE_TARBALL" "Dockerfile-Base-Template"
312-
docker_build $DISTROLESS "$DISTROLESS_BASE_IMAGE_NAME" "$DISTROLESS_BASE_TARBALL" "Dockerfile-Distroless-Template"
313-
docker_build $DISTROLESS "$DISTROLESS_MINIMAL_IMAGE_NAME" "$DISTROLESS_MINIMAL_TARBALL" "Dockerfile-Distroless-Template"
314-
docker_build $DISTROLESS "$DISTROLESS_DEBUG_IMAGE_NAME" "$DISTROLESS_DEBUG_TARBALL" "Dockerfile-Distroless-Template"
336+
docker_build $BASE "$BASE_IMAGE_NAME" "$BASE_TARBALL" "Dockerfile-Base-Template" "$BASE_BUILD"
337+
docker_build $DISTROLESS "$DISTROLESS_BASE_IMAGE_NAME" "$DISTROLESS_BASE_TARBALL" "Dockerfile-Distroless-Template" "$DISTROLESS_BASE_BUILD"
338+
docker_build $DISTROLESS "$DISTROLESS_MINIMAL_IMAGE_NAME" "$DISTROLESS_MINIMAL_TARBALL" "Dockerfile-Distroless-Template" "$DISTROLESS_MINIMAL_BUILD"
339+
docker_build $DISTROLESS "$DISTROLESS_DEBUG_IMAGE_NAME" "$DISTROLESS_DEBUG_TARBALL" "Dockerfile-Distroless-Template" "$DISTROLESS_DEBUG_BUILD"
315340
docker_build_marinara
316341
}
317342

LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

LICENSES-AND-NOTICES/SPECS/data/licenses.json

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -227,9 +227,9 @@
227227
"fftw",
228228
"filebench",
229229
"fio",
230-
"fipscheck",
231230
"firewalld",
232231
"flac",
232+
"flashrom",
233233
"flatbuffers",
234234
"flite",
235235
"fltk",
@@ -253,6 +253,8 @@
253253
"fuse-zip",
254254
"fuse3",
255255
"future",
256+
"fwupd",
257+
"fwupd-efi",
256258
"fxload",
257259
"gavl",
258260
"gbenchmark",
@@ -272,6 +274,7 @@
272274
"geos",
273275
"gfs2-utils",
274276
"ghc-srpm-macros",
277+
"gi-docgen",
275278
"giflib",
276279
"gl-manpages",
277280
"glew",
@@ -592,6 +595,7 @@
592595
"libbytesize",
593596
"libcacard",
594597
"libcanberra",
598+
"libcbor",
595599
"libcdio",
596600
"libcdio-paranoia",
597601
"libcdr",
@@ -675,6 +679,7 @@
675679
"libiscsi",
676680
"libisoburn",
677681
"libisofs",
682+
"libjaylink",
678683
"libjcat",
679684
"libkcapi",
680685
"libkeepalive",
@@ -780,6 +785,7 @@
780785
"libunicap",
781786
"libuninameslist",
782787
"liburing",
788+
"libusb1",
783789
"libusbmuxd",
784790
"libuser",
785791
"libutempter",
@@ -1090,6 +1096,7 @@
10901096
"papi",
10911097
"paps",
10921098
"parallel",
1099+
"passim",
10931100
"patchelf",
10941101
"patchutils",
10951102
"pbzip2",
@@ -1646,7 +1653,9 @@
16461653
"python-betamax",
16471654
"python-blinker",
16481655
"python-blivet",
1656+
"python-breathe",
16491657
"python-cached_property",
1658+
"python-cbor2",
16501659
"python-charset-normalizer",
16511660
"python-cheetah",
16521661
"python-click",
@@ -1814,6 +1823,7 @@
18141823
"python-should_dsl",
18151824
"python-simpleline",
18161825
"python-slip",
1826+
"python-smartypants",
18171827
"python-sniffio",
18181828
"python-sortedcontainers",
18191829
"python-soupsieve",
@@ -1826,6 +1836,7 @@
18261836
"python-sphinxcontrib-devhelp",
18271837
"python-sphinxcontrib-htmlhelp",
18281838
"python-sphinxcontrib-httpdomain",
1839+
"python-sphinxcontrib-jquery",
18291840
"python-sphinxcontrib-jsmath",
18301841
"python-sphinxcontrib-qthelp",
18311842
"python-sphinxcontrib-serializinghtml",
@@ -1850,10 +1861,12 @@
18501861
"python-trio",
18511862
"python-trove-classifiers",
18521863
"python-typing-extensions",
1864+
"python-typogrify",
18531865
"python-uamqp",
18541866
"python-unittest2",
18551867
"python-uritemplate",
18561868
"python-urwid",
1869+
"python-uswid",
18571870
"python-varlink",
18581871
"python-versioneer",
18591872
"python-virt-firmware",
@@ -2069,6 +2082,7 @@
20692082
"udisks2",
20702083
"uglify-js",
20712084
"uid_wrapper",
2085+
"umockdev",
20722086
"unicode-emoji",
20732087
"unicode-ucd",
20742088
"unique3",
@@ -2232,6 +2246,7 @@
22322246
"docker-compose",
22332247
"doxygen",
22342248
"dtc",
2249+
"edk2-hvloader-signed",
22352250
"elixir",
22362251
"espeak-ng",
22372252
"espeakup",
@@ -2256,6 +2271,7 @@
22562271
"keda",
22572272
"keras",
22582273
"kernel-64k-signed",
2274+
"kernel-mshv-signed",
22592275
"kernel-signed",
22602276
"kernel-uki",
22612277
"kernel-uki-signed",
@@ -2559,7 +2575,6 @@
25592575
"gnu-regexp",
25602576
"golang-packaging",
25612577
"guava",
2562-
"guava20",
25632578
"hamcrest",
25642579
"hawtjni-runtime",
25652580
"httpcomponents-core",

SPECS-EXTENDED/PEGTL/PEGTL-compiler-warning.patch

Lines changed: 0 additions & 32 deletions
This file was deleted.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"Signatures": {
3-
"PEGTL-2.8.3.tar.gz": "88b8e4ded6ea1f3f2223cc3e37072e2db1e123b90d36c309816341ae9d966723"
3+
"PEGTL-3.2.8.tar.gz": "319e8238daebc3a163f60c88c78922a8012772076fdd64a8dafaf5619cd64773"
44
}
55
}

0 commit comments

Comments
 (0)