Ver código fonte

Automation for composer authentication at repo.magento.com

Setup script will ask you to instert repo.magento.com username (public_key) and password (private_key). Inserted authentication data will be placed to container's composer config and initial installation performed withuout issues. Also it is possible to save authentication data to host's composer config (optionaly).
Dmitry Shkoliar 6 anos atrás
pai
commit
6e9cfe6379
1 arquivos alterados com 30 adições e 0 exclusões
  1. 30 0
      compose/magento-2/bin/setup

+ 30 - 0
compose/magento-2/bin/setup

@@ -19,6 +19,36 @@ bin/copytocontainer --all
 
 bin/clinotty chmod u+x bin/magento
 
+if hash composer 2>/dev/null; then
+    PUBLIC_KEY="$(composer config -gl | grep '\[http-basic.repo.magento.com.username\]' | cut -c40-)"
+    PRIVATE_KEY="$(composer config -gl | grep '\[http-basic.repo.magento.com.password\]' | cut -c40-)"
+fi
+
+if [ -z "$PUBLIC_KEY" ] || [ -z "$PRIVATE_KEY" ]; then
+    exec < /dev/tty
+    echo
+    echo
+    echo "    Authentication required (repo.magento.com, public_key and private_key):"
+    read -p "        Username: " PUBLIC_KEY
+    read -p "        Password: " PRIVATE_KEY
+    echo
+    if [ -n "$PUBLIC_KEY" ] && [ -n "$PRIVATE_KEY" ] && hash composer 2>/dev/null; then
+        read -p "    Add authentication information to host composer config? y/n: " ADD_AUTH
+        echo
+        if [[ $ADD_AUTH =~ ^[Yy]$ ]]; then
+            composer global config http-basic.repo.magento.com $PUBLIC_KEY $PRIVATE_KEY
+        fi
+        ADD_AUTH=''
+    fi
+    exec <&-
+fi
+
+if [ -n "$PUBLIC_KEY" ] && [ -n "$PRIVATE_KEY" ]; then
+    bin/clinotty composer config http-basic.repo.magento.com $PUBLIC_KEY $PRIVATE_KEY
+    PUBLIC_KEY=''
+    PRIVATE_KEY=''
+fi
+
 echo "Forcing reinstall of composer deps to ensure perms & reqs..."
 bin/clinotty composer install