Browse Source

fix docker build tags

Nick Sweeting 2 năm trước cách đây
mục cha
commit
7283e9b91d
3 tập tin đã thay đổi với 48 bổ sung50 xóa
  1. 20 20
      bin/build_docker.sh
  2. 28 28
      package-lock.json
  3. 0 2
      requirements.txt

+ 20 - 20
bin/build_docker.sh

@@ -23,14 +23,14 @@ SUPPORTED_PLATFORMS="linux/amd64,linux/arm64,linux/arm/v7"
 TAG_NAME="${1:-$(git rev-parse --abbrev-ref HEAD)}"
 TAG_NAME="${1:-$(git rev-parse --abbrev-ref HEAD)}"
 VERSION="$(jq -r '.version' < "$REPO_DIR/package.json")"
 VERSION="$(jq -r '.version' < "$REPO_DIR/package.json")"
 SHORT_VERSION="$(echo "$VERSION" | perl -pe 's/(\d+)\.(\d+)\.(\d+)/$1.$2/g')"
 SHORT_VERSION="$(echo "$VERSION" | perl -pe 's/(\d+)\.(\d+)\.(\d+)/$1.$2/g')"
-REQUIRED_PLATFORMS="${2:-$SUPPORTED_PLATFORMS}"
+SELECTED_PLATFORMS="${2:-$SUPPORTED_PLATFORMS}"
 
 
-echo "[+] Building Docker image: tag=$TAG_NAME version=$SHORT_VERSION arch=$REQUIRED_PLATFORMS"
+echo "[+] Building Docker image: tag=$TAG_NAME version=$SHORT_VERSION arch=$SELECTED_PLATFORMS"
 
 
 function check_platforms() {
 function check_platforms() {
     INSTALLED_PLATFORMS="$(docker buildx inspect | grep 'Platforms:' )"
     INSTALLED_PLATFORMS="$(docker buildx inspect | grep 'Platforms:' )"
 
 
-    for REQUIRED_PLATFORM in ${REQUIRED_PLATFORMS//,/$IFS}; do
+    for REQUIRED_PLATFORM in ${SELECTED_PLATFORMS//,/$IFS}; do
         echo "[+] Checking for: $REQUIRED_PLATFORM..."
         echo "[+] Checking for: $REQUIRED_PLATFORM..."
         if ! (echo "$INSTALLED_PLATFORMS" | grep -q "$REQUIRED_PLATFORM"); then
         if ! (echo "$INSTALLED_PLATFORMS" | grep -q "$REQUIRED_PLATFORM"); then
             return 1
             return 1
@@ -48,11 +48,11 @@ function remove_builder() {
 
 
 function create_builder() {
 function create_builder() {
     docker buildx use xbuilder && return 0
     docker buildx use xbuilder && return 0
-    echo "[+] Creating new xbuilder for: $REQUIRED_PLATFORMS"
+    echo "[+] Creating new xbuilder for: $SELECTED_PLATFORMS"
     echo
     echo
 
 
     # Switch to buildx builder if already present / previously created
     # Switch to buildx builder if already present / previously created
-    docker buildx create --name xbuilder --driver docker-container --bootstrap --use --platform "$REQUIRED_PLATFORMS" || true
+    docker buildx create --name xbuilder --driver docker-container --bootstrap --use --platform "$SELECTED_PLATFORMS" || true
     docker buildx inspect --bootstrap || true
     docker buildx inspect --bootstrap || true
 }
 }
 
 
@@ -77,18 +77,18 @@ pdm export --group=':all' --production --without-hashes -o requirements.txt
 echo "[+] Building archivebox:$VERSION docker image..."
 echo "[+] Building archivebox:$VERSION docker image..."
 # docker builder prune
 # docker builder prune
 # docker build . --no-cache -t archivebox-dev \
 # docker build . --no-cache -t archivebox-dev \
-docker buildx build --platform "$REQUIRED_PLATFORMS" --load . \
-               -t archivebox \
-               -t archivebox:$TAG_NAME \
-               -t archivebox:$VERSION \
-               -t archivebox:$SHORT_VERSION \
-               -t archivebox:latest \
-               -t docker.io/nikisweeting/archivebox:$TAG_NAME \
-               -t docker.io/nikisweeting/archivebox:$VERSION \
-               -t docker.io/nikisweeting/archivebox:$SHORT_VERSION \
-               -t docker.io/archivebox/archivebox:$TAG_NAME \
-               -t docker.io/archivebox/archivebox:$VERSION \
-               -t docker.io/archivebox/archivebox:$SHORT_VERSION \
-               -t docker.pkg.github.com/archivebox/archivebox/archivebox:$TAG_NAME \
-               -t docker.pkg.github.com/archivebox/archivebox/archivebox:$VERSION \
-               -t docker.pkg.github.com/archivebox/archivebox/archivebox:$SHORT_VERSION
+# replace --load with --push to deploy
+docker buildx build --platform "$SELECTED_PLATFORMS" --load . \
+               -t archivebox/archivebox \
+               -t archivebox/archivebox:$TAG_NAME \
+               -t archivebox/archivebox:$VERSION \
+               -t archivebox/archivebox:$SHORT_VERSION \
+               -t archivebox/archivebox:latest \
+               -t nikisweeting/archivebox \
+               -t nikisweeting/archivebox:$TAG_NAME \
+               -t nikisweeting/archivebox:$VERSION \
+               -t nikisweeting/archivebox:$SHORT_VERSION \
+               -t nikisweeting/archivebox:latest \
+               -t ghcr.io/archivebox/archivebox/archivebox:$TAG_NAME \
+               -t ghcr.io/archivebox/archivebox/archivebox:$VERSION \
+               -t ghcr.io/archivebox/archivebox/archivebox:$SHORT_VERSION

+ 28 - 28
package-lock.json

@@ -226,12 +226,12 @@
       "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA=="
       "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA=="
     },
     },
     "node_modules/@types/node": {
     "node_modules/@types/node": {
-      "version": "20.8.7",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.7.tgz",
-      "integrity": "sha512-21TKHHh3eUHIi2MloeptJWALuCu5H7HQTdTrWIFReA8ad+aggoX+lRes3ex7/FtpC+sVUpFMQ+QTfYr74mruiQ==",
+      "version": "20.8.10",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.10.tgz",
+      "integrity": "sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==",
       "optional": true,
       "optional": true,
       "dependencies": {
       "dependencies": {
-        "undici-types": "~5.25.1"
+        "undici-types": "~5.26.4"
       }
       }
     },
     },
     "node_modules/@types/yauzl": {
     "node_modules/@types/yauzl": {
@@ -249,9 +249,9 @@
       "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA=="
       "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA=="
     },
     },
     "node_modules/acorn": {
     "node_modules/acorn": {
-      "version": "8.10.0",
-      "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz",
-      "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==",
+      "version": "8.11.2",
+      "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz",
+      "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==",
       "bin": {
       "bin": {
         "acorn": "bin/acorn"
         "acorn": "bin/acorn"
       },
       },
@@ -269,9 +269,9 @@
       }
       }
     },
     },
     "node_modules/acorn-walk": {
     "node_modules/acorn-walk": {
-      "version": "8.2.0",
-      "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz",
-      "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==",
+      "version": "8.3.0",
+      "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz",
+      "integrity": "sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==",
       "engines": {
       "engines": {
         "node": ">=0.4.0"
         "node": ">=0.4.0"
       }
       }
@@ -1793,9 +1793,9 @@
       }
       }
     },
     },
     "node_modules/punycode": {
     "node_modules/punycode": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
-      "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
+      "version": "2.3.1",
+      "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
+      "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
       "engines": {
       "engines": {
         "node": ">=6"
         "node": ">=6"
       }
       }
@@ -1855,8 +1855,8 @@
       "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag=="
       "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag=="
     },
     },
     "node_modules/readability-extractor": {
     "node_modules/readability-extractor": {
-      "version": "0.0.8",
-      "resolved": "git+ssh://[email protected]/ArchiveBox/readability-extractor.git#fd0c971ea15c69338aad38871b5246fc474f6152",
+      "version": "0.0.9",
+      "resolved": "git+ssh://[email protected]/ArchiveBox/readability-extractor.git#e614ba08c4e024db75f8c746b8f4634f16ae2f50",
       "license": "MIT",
       "license": "MIT",
       "dependencies": {
       "dependencies": {
         "@mozilla/readability": "^0.4.4",
         "@mozilla/readability": "^0.4.4",
@@ -1971,16 +1971,16 @@
       "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA=="
       "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA=="
     },
     },
     "node_modules/single-file-cli": {
     "node_modules/single-file-cli": {
-      "version": "1.1.12",
-      "resolved": "https://registry.npmjs.org/single-file-cli/-/single-file-cli-1.1.12.tgz",
-      "integrity": "sha512-CTMqoCnHgB/duMU10SwA6v9uqG511GItVghLDTv1lTVa4JRwJ4qpsiz7KWXYQh5QyefQJHFVVxzSNWDVpNJC4w==",
+      "version": "1.1.18",
+      "resolved": "https://registry.npmjs.org/single-file-cli/-/single-file-cli-1.1.18.tgz",
+      "integrity": "sha512-M60Mm385w2dvESNdGrFlrJoK3Cln011y8n3g3myRH7XQcuiuBQB2hVP1DDlpqOGRePDpayVFgDflSnRMMf0klQ==",
       "dependencies": {
       "dependencies": {
         "file-url": "3.0.0",
         "file-url": "3.0.0",
         "iconv-lite": "0.6.3",
         "iconv-lite": "0.6.3",
         "jsdom": "22.1.0",
         "jsdom": "22.1.0",
         "puppeteer-core": "21.2.1",
         "puppeteer-core": "21.2.1",
         "selenium-webdriver": "4.12.0",
         "selenium-webdriver": "4.12.0",
-        "single-file-core": "1.2.13",
+        "single-file-core": "1.2.22",
         "strong-data-uri": "1.0.6",
         "strong-data-uri": "1.0.6",
         "yargs": "17.7.2"
         "yargs": "17.7.2"
       },
       },
@@ -2064,9 +2064,9 @@
       }
       }
     },
     },
     "node_modules/single-file-core": {
     "node_modules/single-file-core": {
-      "version": "1.2.13",
-      "resolved": "https://registry.npmjs.org/single-file-core/-/single-file-core-1.2.13.tgz",
-      "integrity": "sha512-QO9wfaajBii670m5mmjslrpCxmK9gkiGUg3XSTLtG4YN9k7t6EAhSORpjg5N/DwZk0seEZqXTorPp6aN9c6lYA=="
+      "version": "1.2.22",
+      "resolved": "https://registry.npmjs.org/single-file-core/-/single-file-core-1.2.22.tgz",
+      "integrity": "sha512-2XDxfZFWkUf391vx4R6FwIJcwTJKCBg+g8EKzp9a9ef8JZgomWeO4WwPhE7N9+aYBE15pzR9gcHRvVieI8/2FA=="
     },
     },
     "node_modules/smart-buffer": {
     "node_modules/smart-buffer": {
       "version": "4.2.0",
       "version": "4.2.0",
@@ -2161,9 +2161,9 @@
       }
       }
     },
     },
     "node_modules/streamx": {
     "node_modules/streamx": {
-      "version": "2.15.1",
-      "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz",
-      "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==",
+      "version": "2.15.2",
+      "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.2.tgz",
+      "integrity": "sha512-b62pAV/aeMjUoRN2C/9F0n+G8AfcJjNC0zw/ZmOHeFsIe4m4GzjVW9m6VHXVjk536NbdU9JRwKMJRfkc+zUFTg==",
       "dependencies": {
       "dependencies": {
         "fast-fifo": "^1.1.0",
         "fast-fifo": "^1.1.0",
         "queue-tick": "^1.0.1"
         "queue-tick": "^1.0.1"
@@ -2313,9 +2313,9 @@
       }
       }
     },
     },
     "node_modules/undici-types": {
     "node_modules/undici-types": {
-      "version": "5.25.3",
-      "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.25.3.tgz",
-      "integrity": "sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==",
+      "version": "5.26.5",
+      "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
+      "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
       "optional": true
       "optional": true
     },
     },
     "node_modules/universalify": {
     "node_modules/universalify": {

+ 0 - 2
requirements.txt

@@ -13,7 +13,6 @@ decorator==5.1.1
 django==3.1.14
 django==3.1.14
 django-auth-ldap==4.1.0
 django-auth-ldap==4.1.0
 django-extensions==3.1.5
 django-extensions==3.1.5
-exceptiongroup==1.1.3
 executing==2.0.1
 executing==2.0.1
 idna==3.4
 idna==3.4
 ipython==8.17.2
 ipython==8.17.2
@@ -41,7 +40,6 @@ sonic-client==1.0.0
 sqlparse==0.4.4
 sqlparse==0.4.4
 stack-data==0.6.3
 stack-data==0.6.3
 traitlets==5.13.0
 traitlets==5.13.0
-typing-extensions==4.8.0
 tzlocal==5.2
 tzlocal==5.2
 urllib3==2.0.7
 urllib3==2.0.7
 w3lib==2.1.2
 w3lib==2.1.2