feat: pat token support
This commit is contained in:
8 files changed
+35
-21
No files matched your search
+6
-8
@@ -4,12 +4,10 @@
|
||||
# CONTAINER_REGISTRY=mintsystem/
|
||||
ODOO_REVISION=16.0.20250106
|
||||
# ODOO_REVISION_CONTAINER_PULL=false
|
||||
# GIT_SSH_PUBLIC_KEY: ssh-ed25519 BBBBC3NzaC1lZDI1NTE5BBBBIDR9Ibi0mATjCyx1EYg594oFkY0rghtgo+pnFHOvAcym
|
||||
# GIT_SSH_PRIVATE_KEY="-----BEGIN OPENSSH PRIVATE KEY-----
|
||||
# QyNTUxOQAAACCuoR1PvK081rwrC5hlSXM7Q24cPQOpSlymLefnPiihxQAAAJjEbzDGxG8w
|
||||
# AAAEDx6kjL/1dmz7WZctryva7EphDT1rHyyfjxFiEPVnmrXq6hHU+8rTzWvCsLmGVJcztD
|
||||
# bhw9A6lKXKYt5+c+KKHFAAAAEmJvdEBtaW50LXN5c3RlbS5jaAECAw==
|
||||
# -----END OPENSSH PRIVATE KEY-----"
|
||||
# GIT_SSH_PUBLIC_KEY=ssh-ed25519 BBBBC3NzaC1lZDI1NTE5BBBBIDR9Ibi0mATjCyx1EYg594oFkY0rghtgo+pnFHOvAcym Mint-System-Project-MCC@github.com
|
||||
# GIT_SSH_PRIVATE_KEY=LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLQpiM0JsYm5OemFDMXJaWGt0ZGpFQUFBQUFCRzV2Ym1VQUFBQUVibTl1WlFBQUFBQUFBQUFCQUFBQU13QUFBQXR6YzJndFpXClF5TlRVeE9RQUFBQ0EwZlNHNHRKZ0U0d3NzZFJHSU9mZUtCWkdOSzRJYllLUHFaeFJ6cndITXBnQUFBS2k1WkJhRnVXUVcKaFFBQUFBdHpjMmd0WldReU5UVXhPUUFBQUNBMGZTRzR0SmdFNHdzc2RSR0lPZmVLQlpTks0SWJZS1BxWnhSenJ3SE1wZwowQkFnTT0KLS0tLS1FTkQgT1BFTlNTSCBQUklWQVRFIEtFWS0tLS0tCg==
|
||||
# GITHUB_USERNAME=bot-mintsys
|
||||
# GITHUB_PERSONAL_ACCESS_TOKEN=
|
||||
# ADDONS_GIT_REPOS="git@github.com:Mint-System/Odoo-Apps-Server-Tools.git#16.0,git@github.com:OCA/server-tools.git#16.0"
|
||||
# ODOO_ADDONS_PATH=thirdparty/odoo-apps-partner-contact,../odoo-cd/untracked-odoo-apps
|
||||
# ODOO_ADDONS_PATH=/mnt/addons/,/mnt/oca/,/mnt/enterprise,/mnt/themes/
|
||||
@@ -19,8 +17,8 @@ ODOO_REVISION=16.0.20250106
|
||||
# ODOO_PARAM="--without-demo=all"
|
||||
# SERVER_WIDE_MODULES=session_db,module_change_auto_install,mail_environment
|
||||
# SESSION_DB_URI=postgres://odoo:odoo@db/odoo
|
||||
LOG_LEVEL=debug
|
||||
# LOG_LEVEL=debug
|
||||
# LIST_DB=False
|
||||
# ADMIN_PASSWD=oqua9AiHeibac2pie9ei
|
||||
# ADMIN_PASSWD=
|
||||
# DBFILTER=^%d$
|
||||
# MODULE_AUTO_INSTALL_DISABLED=odoo_test_xmlrunner
|
||||
@@ -7,6 +7,7 @@ All notable changes to this project will be documented in this file. The format
|
||||
### Added
|
||||
|
||||
* Commands to update git submodules in batch `-status`, `-commit-all`, `-push`.
|
||||
* Support `GITHUB_USERNAME` and `GITHUB_PERSONAL_ACCESS_TOKEN` in image.
|
||||
|
||||
### Updated
|
||||
|
||||
|
||||
@@ -28,6 +28,8 @@ services:
|
||||
ODOO_MAIL_PASSWORD: ${ODOO_MAIL_PASSWORD}
|
||||
GIT_SSH_PUBLIC_KEY: ${GIT_SSH_PUBLIC_KEY}
|
||||
GIT_SSH_PRIVATE_KEY: ${GIT_SSH_PRIVATE_KEY}
|
||||
GITHUB_USERNAME: ${GITHUB_USERNAME}
|
||||
GITHUB_PERSONAL_ACCESS_TOKEN: ${GITHUB_PERSONAL_ACCESS_TOKEN}
|
||||
ADDONS_GIT_REPOS: ${ADDONS_GIT_REPOS}
|
||||
ODOO_ADDONS_PATH: ${ODOO_ADDONS_PATH}
|
||||
ODOO_DATABASE: "${ODOO_DATABASE}"
|
||||
|
||||
@@ -54,6 +54,8 @@ services:
|
||||
ODOO_MAIL_PASSWORD: *****
|
||||
GIT_SSH_PUBLIC_KEY: ssh-ed25519 BBBBC3NzaC1lZDI1NTE5BBBBIDR9Ibi0mATjCyx1EYg594oFkY0rghtgo+pnFHOvAcym Mint-System-Project-MCC@github.com
|
||||
GIT_SSH_PRIVATE_KEY: LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLQpiM0JsYm5OemFDMXJaWGt0ZGpFQUFBQUFCRzV2Ym1VQUFBQUVibTl1WlFBQUFBQUFBQUFCQUFBQU13QUFBQXR6YzJndFpXClF5TlRVeE9RQUFBQ0EwZlNHNHRKZ0U0d3NzZFJHSU9mZUtCWkdOSzRJYllLUHFaeFJ6cndITXBnQUFBS2k1WkJhRnVXUVcKaFFBQUFBdHpjMmd0WldReU5UVXhPUUFBQUNBMGZTRzR0SmdFNHdzc2RSR0lPZmVLQlpTks0SWJZS1BxWnhSenJ3SE1wZwowQkFnTT0KLS0tLS1FTkQgT1BFTlNTSCBQUklWQVRFIEtFWS0tLS0tCg==
|
||||
GITHUB_USERNAME: bot-mintsys
|
||||
GITHUB_PERSONAL_ACCESS_TOKEN: *****
|
||||
ADDONS_GIT_REPOS: "git@github.com:Mint-System/Odoo-Apps-Server-Tools.git#16.0,git@github.com:OCA/server-tools.git#16.0"
|
||||
ODOO_ADDONS_PATH: /mnt/addons/,/mnt/oca/,/mnt/enterprise,/mnt/themes/
|
||||
ODOO_DATABASE: "16.0"
|
||||
@@ -194,6 +196,8 @@ The image can clone git repositories.
|
||||
|
||||
* `GIT_SSH_PUBLIC_KEY` Public key for SSH connection.
|
||||
* `GIT_SSH_PRIVATE_KEY` Base64 encoded private key for SSH connection.
|
||||
* `GITHUB_USERNAME` Username for git clone command with https.
|
||||
* `GITHUB_PERSONAL_ACCESS_TOKEN` Token for git clone command with https.
|
||||
* `ADDONS_GIT_REPOS` Comma seperated list of git clone urls appended with `#` and branch name.
|
||||
|
||||
### Addons Path
|
||||
|
||||
+18
-12
@@ -20,30 +20,36 @@ if [ -n "$ADDONS_GIT_REPOS" ]; then
|
||||
for ADDON_GIT_REPO in $ADDONS_GIT_REPOS; do
|
||||
|
||||
# Supported urls:
|
||||
# SSH: git@github.com:OCA/server-tools.git#16.0
|
||||
# HTTP: https://github.com/OCA/server-tools.git#16.0
|
||||
# ADDON_GIT_REPO=git@github.com:OCA/server-tools.git#16.0
|
||||
# ADDON_GIT_REPO=https://github.com/OCA/server-tools.git#16.0
|
||||
|
||||
GIT_URL=$(echo "$ADDON_GIT_REPO" | cut -d# -f1)
|
||||
GIT_BRANCH=$(echo "$ADDON_GIT_REPO" | cut -d# -f2)
|
||||
GIT_HOSTNAME=$(parse-url "$GIT_URL" hostname)
|
||||
GIT_PROTO=$(parse-url "$GIT_URL" proto)
|
||||
GIT_PATH=$(parse-url "$GIT_URL" path | sed 's/.git//g')
|
||||
GIT_PATH="/var/lib/odoo/git/$GIT_HOSTNAME/$GIT_PATH"
|
||||
GIT_LOCAL_PATH="/var/lib/odoo/git/${GIT_HOSTNAME}/$GIT_PATH"
|
||||
|
||||
if [ ! -d "$GIT_PATH/.git" ]; then
|
||||
if [ ! -d "$GIT_LOCAL_PATH/.git" ]; then
|
||||
# Clone git repo and submodules
|
||||
mkdir -p "$GIT_PATH"
|
||||
mkdir -p "$GIT_LOCAL_PATH"
|
||||
ssh-keyscan -t rsa,dsa "$GIT_HOSTNAME" > ~/.ssh/known_hosts 2>/dev/null
|
||||
entrypoint-log "Clone $GIT_URL branch $GIT_BRANCH."
|
||||
git clone "$GIT_URL" --depth 1 --single-branch --branch "$GIT_BRANCH" "$GIT_PATH"
|
||||
|
||||
if [ "${GIT_PROTO}${GIT_HOSTNAME}" = "https://github.com" ] && [ -n "$GITHUB_USERNAME" ]; then
|
||||
GIT_URL="${GIT_PROTO}${GITHUB_USERNAME}:${GITHUB_PERSONAL_ACCESS_TOKEN}@${GIT_HOSTNAME}/${GIT_PATH}.git"
|
||||
fi
|
||||
|
||||
entrypoint-log "Clone ${GIT_PROTO}${GIT_HOSTNAME} branch $GIT_BRANCH."
|
||||
git clone "$GIT_URL" --depth 1 --single-branch --branch "$GIT_BRANCH" "$GIT_LOCAL_PATH"
|
||||
else
|
||||
entrypoint-log "Update $GIT_URL branch $GIT_BRANCH."
|
||||
git -C "$GIT_PATH" switch "$GIT_BRANCH"
|
||||
git -C "$GIT_PATH" pull
|
||||
git -C "$GIT_LOCAL_PATH" switch "$GIT_BRANCH"
|
||||
git -C "$GIT_LOCAL_PATH" pull
|
||||
fi
|
||||
|
||||
if [ -f "$GIT_PATH/.gitmodules" ]; then
|
||||
entrypoint-log "Init and update git submodules in $GIT_PATH."
|
||||
git -C "$GIT_PATH" submodule update --init --recursive --depth 1
|
||||
if [ -f "$GIT_LOCAL_PATH/.gitmodules" ]; then
|
||||
entrypoint-log "Init and update git submodules in $GIT_LOCAL_PATH."
|
||||
git -C "$GIT_LOCAL_PATH" submodule update --init --recursive --depth 1
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ Help() {
|
||||
echo
|
||||
echo "$SCRIPT"
|
||||
echo
|
||||
echo "Description: Filter URL for segments."
|
||||
echo "Description: Parse and output segements."
|
||||
echo "Syntax: $SCRIPT <url> [url|proto|user|pass|hostname|subdomain|port|path]"
|
||||
echo "Example: $SCRIPT https://www.example.com subdomain,hostname"
|
||||
echo " $SCRIPT git@github.com:OCA/server-tools.git user,hostname,path"
|
||||
|
||||
Submodule
+1
Submodule oca/oca-partner-contact added at 272c5fe0f2.
Reference in new issue
Block a user