pypi-to-docker-missing-version
Passed Started
by
@dorianturba

Dorian Turba
1Running with gitlab-runner 16.9.1 (782c6ecb)2 on shared-default-runner2.frogg.it JExQc1mp, system ID: s_ceac8b4f51524Using Docker executor with image alpine:latest ...5Pulling docker image alpine:latest ...6Using docker image sha256:a606584aa9aa875552092ec9e1d62cb98d486f51f389609914039aabd9414687 for alpine:latest with digest alpine@sha256:b89d9c93e9ed3597455c90a0b88a8bbb5cb7188438f70953fede212a0c4394e0 ...8Running on runner-jexqc1mp-project-1555-concurrent-0 via frg-runner-prd...10Fetching changes with git depth set to 20...11Reinitialized existing Git repository in /builds/swepy/cicd-templates/pypi-to-docker-missing-version/.git/12Checking out a952e214 as detached HEAD (ref is trunk)...13Removing version.txt14Skipping Git submodules setup16Using docker image sha256:a606584aa9aa875552092ec9e1d62cb98d486f51f389609914039aabd9414687 for alpine:latest with digest alpine@sha256:b89d9c93e9ed3597455c90a0b88a8bbb5cb7188438f70953fede212a0c4394e0 ...17$ apk update20v3.20.1-113-g873ed20deeb [https://dl-cdn.alpinelinux.org/alpine/v3.20/main]21v3.20.1-116-ga98b2f4dfa9 [https://dl-cdn.alpinelinux.org/alpine/v3.20/community]22OK: 24153 distinct packages available23$ apk add --no-cache curl jq26(1/12) Installing ca-certificates (20240705-r0)27(2/12) Installing brotli-libs (1.1.0-r2)28(3/12) Installing c-ares (1.28.1-r0)29(4/12) Installing libunistring (1.2-r0)30(5/12) Installing libidn2 (2.3.7-r0)31(6/12) Installing nghttp2-libs (1.62.1-r0)32(7/12) Installing libpsl (0.21.5-r1)33(8/12) Installing zstd-libs (1.5.6-r0)34(9/12) Installing libcurl (8.8.0-r0)35(10/12) Installing curl (8.8.0-r0)36(11/12) Installing oniguruma (6.9.9-r0)37(12/12) Installing jq (1.7.1-r0)38Executing busybox-1.36.1-r29.trigger39Executing ca-certificates-20240705-r0.trigger40OK: 14 MiB in 26 packages41$ echo "Image name=$IMAGE_NAME"42Image name=dorianturba/ruff43$ docker_url="$REPOSITORIES_API_URL/$IMAGE_NAME/tags"44$ while [ -n "$docker_url" ]; do45$ docker_response=$(curl -s "$docker_url")46$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then47$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"48$ docker_url=$(echo "$docker_response" | jq -r '.next')49$ if [ "$docker_url" = "null" ]; then50$ done51$ docker_response=$(curl -s "$docker_url")52$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then53$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"54$ docker_url=$(echo "$docker_response" | jq -r '.next')55$ if [ "$docker_url" = "null" ]; then56$ done57$ docker_response=$(curl -s "$docker_url")58$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then59$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"60$ docker_url=$(echo "$docker_response" | jq -r '.next')61$ if [ "$docker_url" = "null" ]; then62$ done63$ docker_response=$(curl -s "$docker_url")64$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then65$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"66$ docker_url=$(echo "$docker_response" | jq -r '.next')67$ if [ "$docker_url" = "null" ]; then68$ done69$ docker_response=$(curl -s "$docker_url")70$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then71$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"72$ docker_url=$(echo "$docker_response" | jq -r '.next')73$ if [ "$docker_url" = "null" ]; then74$ done75$ docker_response=$(curl -s "$docker_url")76$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then77$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"78$ docker_url=$(echo "$docker_response" | jq -r '.next')79$ if [ "$docker_url" = "null" ]; then80$ done81$ docker_response=$(curl -s "$docker_url")82$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then83$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"84$ docker_url=$(echo "$docker_response" | jq -r '.next')85$ if [ "$docker_url" = "null" ]; then86$ done87$ docker_response=$(curl -s "$docker_url")88$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then89$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"90$ docker_url=$(echo "$docker_response" | jq -r '.next')91$ if [ "$docker_url" = "null" ]; then92$ done93$ docker_response=$(curl -s "$docker_url")94$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then95$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"96$ docker_url=$(echo "$docker_response" | jq -r '.next')97$ if [ "$docker_url" = "null" ]; then98$ done99$ docker_response=$(curl -s "$docker_url")100$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then101$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"102$ docker_url=$(echo "$docker_response" | jq -r '.next')103$ if [ "$docker_url" = "null" ]; then104$ done105$ docker_response=$(curl -s "$docker_url")106$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then107$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"108$ docker_url=$(echo "$docker_response" | jq -r '.next')109$ if [ "$docker_url" = "null" ]; then110$ done111$ docker_response=$(curl -s "$docker_url")112$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then113$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"114$ docker_url=$(echo "$docker_response" | jq -r '.next')115$ if [ "$docker_url" = "null" ]; then116$ done117$ docker_response=$(curl -s "$docker_url")118$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then119$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"120$ docker_url=$(echo "$docker_response" | jq -r '.next')121$ if [ "$docker_url" = "null" ]; then122$ done123$ docker_response=$(curl -s "$docker_url")124$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then125$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"126$ docker_url=$(echo "$docker_response" | jq -r '.next')127$ if [ "$docker_url" = "null" ]; then128$ done129$ docker_response=$(curl -s "$docker_url")130$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then131$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"132$ docker_url=$(echo "$docker_response" | jq -r '.next')133$ if [ "$docker_url" = "null" ]; then134$ done135$ docker_response=$(curl -s "$docker_url")136$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then137$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"138$ docker_url=$(echo "$docker_response" | jq -r '.next')139$ if [ "$docker_url" = "null" ]; then140$ done141$ docker_response=$(curl -s "$docker_url")142$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then143$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"144$ docker_url=$(echo "$docker_response" | jq -r '.next')145$ if [ "$docker_url" = "null" ]; then146$ done147$ docker_response=$(curl -s "$docker_url")148$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then149$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"150$ docker_url=$(echo "$docker_response" | jq -r '.next')151$ if [ "$docker_url" = "null" ]; then152$ done153$ docker_response=$(curl -s "$docker_url")154$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then155$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"156$ docker_url=$(echo "$docker_response" | jq -r '.next')157$ if [ "$docker_url" = "null" ]; then158$ done159$ docker_response=$(curl -s "$docker_url")160$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then161$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"162$ docker_url=$(echo "$docker_response" | jq -r '.next')163$ if [ "$docker_url" = "null" ]; then164$ done165$ docker_response=$(curl -s "$docker_url")166$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then167$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"168$ docker_url=$(echo "$docker_response" | jq -r '.next')169$ if [ "$docker_url" = "null" ]; then170$ done171$ docker_response=$(curl -s "$docker_url")172$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then173$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"174$ docker_url=$(echo "$docker_response" | jq -r '.next')175$ if [ "$docker_url" = "null" ]; then176$ done177$ docker_response=$(curl -s "$docker_url")178$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then179$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"180$ docker_url=$(echo "$docker_response" | jq -r '.next')181$ if [ "$docker_url" = "null" ]; then182$ done183$ docker_response=$(curl -s "$docker_url")184$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then185$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"186$ docker_url=$(echo "$docker_response" | jq -r '.next')187$ if [ "$docker_url" = "null" ]; then188$ done189$ docker_response=$(curl -s "$docker_url")190$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then191$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"192$ docker_url=$(echo "$docker_response" | jq -r '.next')193$ if [ "$docker_url" = "null" ]; then194$ done195$ docker_response=$(curl -s "$docker_url")196$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then197$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"198$ docker_url=$(echo "$docker_response" | jq -r '.next')199$ if [ "$docker_url" = "null" ]; then200$ done201$ docker_response=$(curl -s "$docker_url")202$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then203$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"204$ docker_url=$(echo "$docker_response" | jq -r '.next')205$ if [ "$docker_url" = "null" ]; then206$ done207$ docker_response=$(curl -s "$docker_url")208$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then209$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"210$ docker_url=$(echo "$docker_response" | jq -r '.next')211$ if [ "$docker_url" = "null" ]; then212$ done213$ docker_response=$(curl -s "$docker_url")214$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then215$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"216$ docker_url=$(echo "$docker_response" | jq -r '.next')217$ if [ "$docker_url" = "null" ]; then218$ done219$ docker_response=$(curl -s "$docker_url")220$ if [ "$(echo "$docker_response" | jq -r '.results | length')" -eq 0 ]; then221$ TAGS="$TAGS $(echo "$docker_response" | jq -r '.results[].name')"222$ docker_url=$(echo "$docker_response" | jq -r '.next')223$ if [ "$docker_url" = "null" ]; then224$ docker_url=""225$ fi226$ done227$ echo "tags on docker=$TAGS"228tags on docker= 0.4.62290.4.52300.4.42310.4.32320.4.22330.4.12340.4.02350.3.72360.3.62370.3.5 0.3.42380.3.32390.3.22400.3.12410.3.02420.2.22430.2.12440.2.02450.1.152460.1.14 0.1.132470.1.122480.1.112490.1.102500.1.92510.1.82520.1.72530.1.62540.1.52550.1.4 0.1.32560.1.22570.1.12580.1.02590.0.2922600.0.2912610.0.2902620.0.2892630.0.2882640.0.287 0.0.2862650.0.2852660.0.2842670.0.2832680.0.2822690.0.2812700.0.2802710.0.2792720.0.2782730.0.277 0.0.2762740.0.2752750.0.2742760.0.2732770.0.2722780.0.2712790.0.2702800.0.2692810.0.2672820.0.266 0.0.2652830.0.2642840.0.2632850.0.2622860.0.2612870.0.2602880.0.2592890.0.2582900.0.2572910.0.256 0.0.2552920.0.2542930.0.2532940.0.2522950.0.2512960.0.2502970.0.2492980.0.2482990.0.2473000.0.246 0.0.2453010.0.2443020.0.2433030.0.2423040.0.2413050.0.2403060.0.2393070.0.2383080.0.2373090.0.236 0.0.2353100.0.2343110.0.2333120.0.2313130.0.2303140.0.2293150.0.2283160.0.2273170.0.2263180.0.225 0.0.2243190.0.2233200.0.2223210.0.2213220.0.2203230.0.2193240.0.2183250.0.2173260.0.2163270.0.215 0.0.2143280.0.2133290.0.2123300.0.2113310.0.2103320.0.2093330.0.2083340.0.2073350.0.2063360.0.205 0.0.2043370.0.2033380.0.2023390.0.2013400.0.2003410.0.1993420.0.1983430.0.1963440.0.1953450.0.194 0.0.1933460.0.1923470.0.1913480.0.1903490.0.1893500.0.1883510.0.1873520.0.1863530.0.1853540.0.184 0.0.1833550.0.1823560.0.1813570.0.1803580.0.1783590.0.1773600.0.1763610.0.1753620.0.1743630.0.173 0.0.1723640.0.1713650.0.1703660.0.1693670.0.1683680.0.1673690.0.1663700.0.1653710.0.1643720.0.163 0.0.1623730.0.1613740.0.1603750.0.1593760.0.1583770.0.1573780.0.1563790.0.1553800.0.1543810.0.153 0.0.1523820.0.1513830.0.1503840.0.1493850.0.1483860.0.1463870.0.1453880.0.1443890.0.1433900.0.142 0.0.1413910.0.1403920.0.1393930.0.1383940.0.1373950.0.1353960.0.1343970.0.1333980.0.1323990.0.131 0.0.1304000.0.1294010.0.1284020.0.1274030.0.1264040.0.1254050.0.1244060.0.1234070.0.1224080.0.121 0.0.1204090.0.1194100.0.1184110.0.1174120.0.1164130.0.1144140.0.1134150.0.1124160.0.1114170.0.110 0.0.1094180.0.1084190.0.1074200.0.1064210.0.1054220.0.1044230.0.1034240.0.1024250.0.1004260.0.99 0.0.984270.0.974280.0.964290.0.954300.0.944310.0.934320.0.924330.0.914340.0.904350.0.89 0.0.884360.0.864370.0.854380.0.844390.0.834400.0.824410.0.814420.0.804430.0.794440.0.78 0.0.774450.0.764460.0.754470.0.744480.0.734490.0.724500.0.714510.0.704520.0.694530.0.68 0.0.674540.0.664550.0.654560.0.644570.0.634580.0.624590.0.614600.0.604610.0.594620.0.58 0.0.574630.0.554640.0.544650.0.534660.0.524670.0.514680.0.504690.0.494700.0.484710.0.47 0.0.464720.0.454730.0.444740.0.434750.0.424760.0.404770.0.394780.0.374790.0.364800.0.35 0.0.344810.0.334820.0.324830.0.314840.0.304850.0.294860.0.284870.0.254880.0.244890.0.23 0.0.224900.0.214910.0.204920.0.194930.0.184940.0.174950.0.164960.0.154970.0.144980.0.13499$ pypi_url="$PACKAGE_INDEX_API_URL/$PACKAGE_NAME/json"500$ pypi_response=$(curl -s "$pypi_url")501$ releases=$(echo "$pypi_response" | jq -r '.releases | keys[]')502$ echo "releases on pypi:"503releases on pypi:504$ printf "%s " $releases5050.0.100 0.0.102 0.0.103 0.0.104 0.0.105 0.0.106 0.0.107 0.0.108 0.0.109 0.0.110 0.0.111 0.0.112 0.0.113 0.0.114 0.0.116 0.0.117 0.0.118 0.0.119 0.0.120 0.0.121 0.0.122 0.0.123 0.0.124 0.0.125 0.0.126 0.0.127 0.0.128 0.0.129 0.0.13 0.0.130 0.0.131 0.0.132 0.0.133 0.0.134 0.0.135 0.0.137 0.0.138 0.0.139 0.0.14 0.0.140 0.0.141 0.0.142 0.0.143 0.0.144 0.0.145 0.0.146 0.0.148 0.0.149 0.0.15 0.0.150 0.0.151 0.0.152 0.0.153 0.0.154 0.0.155 0.0.156 0.0.157 0.0.158 0.0.159 0.0.16 0.0.160 0.0.161 0.0.162 0.0.163 0.0.164 0.0.165 0.0.166 0.0.167 0.0.168 0.0.169 0.0.17 0.0.170 0.0.171 0.0.172 0.0.173 0.0.174 0.0.175 0.0.176 0.0.177 0.0.178 0.0.18 0.0.180 0.0.181 0.0.182 0.0.183 0.0.184 0.0.185 0.0.186 0.0.187 0.0.188 0.0.189 0.0.19 0.0.190 0.0.191 0.0.192 0.0.193 0.0.194 0.0.195 0.0.196 0.0.198 0.0.199 0.0.20 0.0.200 0.0.201 0.0.202 0.0.203 0.0.204 0.0.205 0.0.206 0.0.207 0.0.208 0.0.209 0.0.21 0.0.210 0.0.211 0.0.212 0.0.213 0.0.214 0.0.215 0.0.216 0.0.217 0.0.218 0.0.219 0.0.22 0.0.220 0.0.221 0.0.222 0.0.223 0.0.224 0.0.225 0.0.226 0.0.227 0.0.228 0.0.229 0.0.23 0.0.230 0.0.231 0.0.233 0.0.234 0.0.235 0.0.236 0.0.237 0.0.238 0.0.239 0.0.24 0.0.240 0.0.241 0.0.242 0.0.243 0.0.244 0.0.245 0.0.246 0.0.247 0.0.248 0.0.249 0.0.25 0.0.250 0.0.251 0.0.252 0.0.253 0.0.254 0.0.255 0.0.256 0.0.257 0.0.258 0.0.259 0.0.260 0.0.261 0.0.262 0.0.263 0.0.264 0.0.265 0.0.266 0.0.267 0.0.269 0.0.270 0.0.271 0.0.272 0.0.273 0.0.274 0.0.275 0.0.276 0.0.277 0.0.278 0.0.279 0.0.28 0.0.280 0.0.281 0.0.282 0.0.283 0.0.284 0.0.285 0.0.286 0.0.287 0.0.288 0.0.289 0.0.29 0.0.290 0.0.291 0.0.292 0.0.30 0.0.31 0.0.32 0.0.33 0.0.34 0.0.35 0.0.36 0.0.37 0.0.39 0.0.40 0.0.42 0.0.43 0.0.44 0.0.45 0.0.46 0.0.47 0.0.48 0.0.49 0.0.50 0.0.51 0.0.52 0.0.53 0.0.54 0.0.55 0.0.57 0.0.58 0.0.59 0.0.60 0.0.61 0.0.62 0.0.63 0.0.64 0.0.65 0.0.66 0.0.67 0.0.68 0.0.69 0.0.70 0.0.71 0.0.72 0.0.73 0.0.74 0.0.75 0.0.76 0.0.77 0.0.78 0.0.79 0.0.80 0.0.81 0.0.82 0.0.83 0.0.84 0.0.85 0.0.86 0.0.88 0.0.89 0.0.90 0.0.91 0.0.92 0.0.93 0.0.94 0.0.95 0.0.96 0.0.97 0.0.98 0.0.99 0.1.0 0.1.1 0.1.10 0.1.11 0.1.12 0.1.13 0.1.14 0.1.15 0.1.2 0.1.3 0.1.4 0.1.5 0.1.6 0.1.7 0.1.8 0.1.9 0.2.0 0.2.1 0.2.2 0.3.0 0.3.1 0.3.2 0.3.3 0.3.4 0.3.5 0.3.6 0.3.7 0.4.0 0.4.1 0.4.10 0.4.2 0.4.3 0.4.4 0.4.5 0.4.6 0.4.7 0.4.8 0.4.9 0.5.0 0.5.1 $ missing_releases=""506$ eval 'for release in $releases; do found=0; for tag in $TAGS; do if [ "$release" = "$tag" ]; then found=1; break; fi; done; if [ $found -eq 0 ]; then missing_releases="$missing_releases $release"; fi; done'507$ missing_releases=$(echo $missing_releases)508$ echo "missing tags=$missing_releases"509missing tags=0.4.10 0.4.7 0.4.8 0.4.9 0.5.0 0.5.1510$ sorted_releases=$(printf "%s\n" $missing_releases | $SORT_CMD)511$ echo "Sorted releases:"512Sorted releases:513$ printf "%s " $sorted_releases5140.4.7 0.4.8 0.4.9 0.4.10 0.5.0 0.5.1 $ version_to_publish=$(echo $sorted_releases | awk '{print $1}')515$ echo "Version to publish: $version_to_publish"516Version to publish: 0.4.7517$ echo "$version_to_publish" > version.txt518$ cat version.txt5190.4.7520$ if [ -n "$version_to_publish" ]; then521$ exit 0523Uploading artifacts...524version.txt: found 1 matching artifact files and directories 525Uploading artifacts as "archive" to coordinator... 201 Created id=278801 responseStatus=201 Created token=64_sNKig527Job succeeded