From d6c27ae525b30f3c742e1dfd078fcc5450b07ca1 Mon Sep 17 00:00:00 2001 From: jkalanda Date: Mon, 8 Sep 2025 12:09:08 -0500 Subject: [PATCH 1/6] fix: Fixed travis failure dependency: none Signed-off-by: jkalanda --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 809c577..36279bf 100644 --- a/.travis.yml +++ b/.travis.yml @@ -28,7 +28,7 @@ before_install: - echo -e "machine github.ibm.com\n login $GH_TOKEN" > ~/.netrc install: - - sudo rm /etc/apt/sources.list.d/mongodb-4.4.list + - sudo rm -f /etc/apt/sources.list.d/mongodb-4.4.list - wget -O- https://pgp.mongodb.com/server-4.4.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-4.4.gpg - echo "deb [signed-by=/usr/share/keyrings/mongodb-4.4.gpg] http://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-4.4.list - pip install tox-travis From 120c06689162d0a68b1d3730bb4ac3e31582e359 Mon Sep 17 00:00:00 2001 From: jkalanda Date: Mon, 8 Sep 2025 13:22:36 -0500 Subject: [PATCH 2/6] fix: Fixed travis failure dependency: none Signed-off-by: jkalanda --- .travis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 36279bf..a1d3f28 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,7 +9,6 @@ notifications: matrix: include: - - python: 3.10 before_script: - >- [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] @@ -18,8 +17,9 @@ matrix: && openssl aes-256-cbc -K $encrypted_27cb64608ff6_key -iv $encrypted_27cb64608ff6_iv -in dl.env.enc -out dl.env -d || true && openssl aes-256-cbc -K $encrypted_fc092b9428d6_key -iv $encrypted_fc092b9428d6_iv -in cis.env.enc -out cis.env -d || true && openssl aes-256-cbc -K $encrypted_89a9eb4f9417_key -iv $encrypted_89a9eb4f9417_iv -in dns.env.enc -out dns.env -d || true - - python: 3.11 - - python: 3.12 + - python: 3.10 + - python: 3.11 + - python: 3.12 before_install: - sudo apt-get update From 11e1ed985509e71e86249d7d5225308f24672918 Mon Sep 17 00:00:00 2001 From: jkalanda Date: Mon, 8 Sep 2025 13:48:23 -0500 Subject: [PATCH 3/6] fix: Fixed travis failure dependency: none Signed-off-by: jkalanda --- .travis.yml | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/.travis.yml b/.travis.yml index a1d3f28..f18b853 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,19 +7,28 @@ cache: pip notifications: email: true +before_script: + - > + [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] && + openssl aes-256-cbc -K $encrypted_d4a185972ecc_key -iv $encrypted_d4a185972ecc_iv -in pdns.env.enc -out pdns.env -d || true + - > + [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] && + openssl aes-256-cbc -K $encrypted_3d8a3eb98382_key -iv $encrypted_3d8a3eb98382_iv -in transit.env.enc -out transit.env -d || true + - > + [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] && + openssl aes-256-cbc -K $encrypted_27cb64608ff6_key -iv $encrypted_27cb64608ff6_iv -in dl.env.enc -out dl.env -d || true + - > + [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] && + openssl aes-256-cbc -K $encrypted_fc092b9428d6_key -iv $encrypted_fc092b9428d6_iv -in cis.env.enc -out cis.env -d || true + - > + [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] && + openssl aes-256-cbc -K $encrypted_89a9eb4f9417_key -iv $encrypted_89a9eb4f9417_iv -in dns.env.enc -out dns.env -d || true + matrix: include: - before_script: - - >- - [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] - && openssl aes-256-cbc -K $encrypted_d4a185972ecc_key -iv $encrypted_d4a185972ecc_iv -in pdns.env.enc -out pdns.env -d || true - && openssl aes-256-cbc -K $encrypted_3d8a3eb98382_key -iv $encrypted_3d8a3eb98382_iv -in transit.env.enc -out transit.env -d || true - && openssl aes-256-cbc -K $encrypted_27cb64608ff6_key -iv $encrypted_27cb64608ff6_iv -in dl.env.enc -out dl.env -d || true - && openssl aes-256-cbc -K $encrypted_fc092b9428d6_key -iv $encrypted_fc092b9428d6_iv -in cis.env.enc -out cis.env -d || true - && openssl aes-256-cbc -K $encrypted_89a9eb4f9417_key -iv $encrypted_89a9eb4f9417_iv -in dns.env.enc -out dns.env -d || true - - python: 3.10 - - python: 3.11 - - python: 3.12 + - python: 3.10 + - python: 3.11 + - python: 3.12 before_install: - sudo apt-get update From 61a3d7c44deb1499ac6653f7572f3e9b97db4e56 Mon Sep 17 00:00:00 2001 From: jkalanda Date: Mon, 8 Sep 2025 14:02:15 -0500 Subject: [PATCH 4/6] fix: Fixed travis failure dependency: none --- .travis.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index f18b853..aa14e1b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,7 +23,14 @@ before_script: - > [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] && openssl aes-256-cbc -K $encrypted_89a9eb4f9417_key -iv $encrypted_89a9eb4f9417_iv -in dns.env.enc -out dns.env -d || true - + - | + set -a + [ -f pdns.env ] && . pdns.env + [ -f transit.env ] && . transit.env + [ -f dl.env ] && . dl.env + [ -f cis.env ] && . cis.env + [ -f dns.env ] && . dns.env + set +a matrix: include: - python: 3.10 From 15a0f571caafae796c4c4a1f709df49481feee6c Mon Sep 17 00:00:00 2001 From: jkalanda Date: Mon, 8 Sep 2025 14:29:16 -0500 Subject: [PATCH 5/6] fix: Fixed travis failure dependency: none --- .travis.yml | 99 +++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 70 insertions(+), 29 deletions(-) diff --git a/.travis.yml b/.travis.yml index aa14e1b..cd9aca3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,6 +8,7 @@ notifications: email: true before_script: + # Decrypt env files (only on non-PR, non-tag builds) - > [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] && openssl aes-256-cbc -K $encrypted_d4a185972ecc_key -iv $encrypted_d4a185972ecc_iv -in pdns.env.enc -out pdns.env -d || true @@ -23,6 +24,8 @@ before_script: - > [ -z "${TRAVIS_TAG}" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ] && openssl aes-256-cbc -K $encrypted_89a9eb4f9417_key -iv $encrypted_89a9eb4f9417_iv -in dns.env.enc -out dns.env -d || true + + # Source (export) everything from the decrypted files - | set -a [ -f pdns.env ] && . pdns.env @@ -31,6 +34,41 @@ before_script: [ -f cis.env ] && . cis.env [ -f dns.env ] && . dns.env set +a + + # Debug: show which values are set (secrets masked) + what's inside the files for IAM URL + - | + echo "=== Debug env start ===" + ls -l *.env || true + + for k in CIS_SERVICES_AUTH_URL API_ENDPOINT CRN ZONE_ID; do + printf '%s=%s\n' "$k" "${!k:-}" + done + if [ -n "$CIS_SERVICES_APIKEY" ]; then + echo "CIS_SERVICES_APIKEY=" + else + echo "CIS_SERVICES_APIKEY=" + fi + + echo "--- IAM URL values found in *.env ---" + grep -h '^CIS_SERVICES_AUTH_URL=' *.env || echo "(none in files)" + echo "=== Debug env end ===" + + # Force PROD IAM unless you intentionally want test + a test-realm API key + - export CIS_SERVICES_AUTH_URL="https://iam.cloud.ibm.com/identity/token" + + # Quick IAM sanity (no secrets printed) + - | + echo "=== IAM sanity ===" + if [ -n "$CIS_SERVICES_APIKEY" ]; then + URL="$CIS_SERVICES_AUTH_URL" + code=$(curl -s -o /dev/null -w '%{http_code}' -X POST "$URL" \ + -H 'Content-Type: application/x-www-form-urlencoded' \ + --data "grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey=${CIS_SERVICES_APIKEY}&response_type=cloud_iam") + echo "IAM POST $URL -> HTTP $code" + else + echo "No CIS_SERVICES_APIKEY set" + fi + matrix: include: - python: 3.10 @@ -38,13 +76,17 @@ matrix: - python: 3.12 before_install: -- sudo apt-get update -- sudo apt-get install pandoc -- pip install pypandoc -- echo -e "machine github.ibm.com\n login $GH_TOKEN" > ~/.netrc + - sudo apt-get update + - sudo apt-get install -y pandoc curl + - pip install pypandoc + # safer .netrc creation + - set +x + - printf "machine github.ibm.com\n login %s\n" "$GH_TOKEN" > ~/.netrc + - chmod 600 ~/.netrc + - set -x install: - - sudo rm -f /etc/apt/sources.list.d/mongodb-4.4.list + - sudo rm -f /etc/apt/sources.list.d/mongodb-4.4.list || true - wget -O- https://pgp.mongodb.com/server-4.4.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-4.4.gpg - echo "deb [signed-by=/usr/share/keyrings/mongodb-4.4.gpg] http://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-4.4.list - pip install tox-travis @@ -52,29 +94,28 @@ install: script: tox before_deploy: -- nvm install 20 -- npm install npm@latest -g -- npm install @semantic-release/changelog -- npm install @semantic-release/exec -- npm install @semantic-release/git -- npm install @semantic-release/github -- pip install bump2version + - nvm install 20 + - npm install npm@latest -g + - npm install @semantic-release/changelog + - npm install @semantic-release/exec + - npm install @semantic-release/git + - npm install @semantic-release/github + - pip install bump2version deploy: -- provider: script - script: npx semantic-release - skip_cleanup: true - on: - python: '3.10' - all_branches: true # Allow semantic-release on any branch triggered by tags - #branch: master - tags: true -- provider: pypi - setuptools_version: "60.8.2" - user: __token__ - password: $PYPI_TOKEN - repository: https://upload.pypi.org/legacy - skip_cleanup: true - on: - python: '3.10' - tags: true \ No newline at end of file + - provider: script + script: npx semantic-release + skip_cleanup: true + on: + python: '3.10' + all_branches: true + tags: true + - provider: pypi + setuptools_version: "60.8.2" + user: __token__ + password: $PYPI_TOKEN + repository: https://upload.pypi.org/legacy + skip_cleanup: true + on: + python: '3.10' + tags: true From e56689aaae2941b67bd26ac68c20164ce8619105 Mon Sep 17 00:00:00 2001 From: jkalanda Date: Mon, 8 Sep 2025 14:59:25 -0500 Subject: [PATCH 6/6] fix: Fixed travis failure dependency: none --- .travis.yml | 1 + tox.ini | 26 +++++++++++++++++++++----- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index cd9aca3..f6e4e66 100644 --- a/.travis.yml +++ b/.travis.yml @@ -34,6 +34,7 @@ before_script: [ -f cis.env ] && . cis.env [ -f dns.env ] && . dns.env set +a + - export CIS_SERVICES_AUTH_URL="https://iam.cloud.ibm.com/identity/token" # Debug: show which values are set (secrets masked) + what's inside the files for IAM URL - | diff --git a/tox.ini b/tox.ini index dea6155..253564d 100644 --- a/tox.ini +++ b/tox.ini @@ -7,11 +7,27 @@ deps = pre-commit commands = pre-commit run [testenv] -passenv = TOXENV CI TRAVIS* +# 1) Pass the service env vars into tox's venv +passenv = + TOXENV + CI + TRAVIS* + CIS_SERVICES_* # includes CIS_SERVICES_APIKEY and CIS_SERVICES_AUTH_URL + CRN + ZONE_ID + API_ENDPOINT + GH_TOKEN + +# 2) Force PROD IAM inside tox (overrides whatever cis.env set) +setenv = + CIS_SERVICES_AUTH_URL = https://iam.cloud.ibm.com/identity/token + commands = - py.test --reruns 2 --cov=ibm_cloud_networking_services {posargs} + py.test --reruns 2 --cov=ibm_cloud_networking_services {posargs} + deps = - -r{toxinidir}/requirements.txt - -r{toxinidir}/requirements-dev.txt + -r{toxinidir}/requirements.txt + -r{toxinidir}/requirements-dev.txt + usedevelop = True -exclude = .venv,.git,.tox,docs \ No newline at end of file +exclude = .venv,.git,.tox,docs