I am authenticating SDF via github action but keep geeting failed.
suitecloud account
setupci \
--account 3945123_SB1 \
--authid sb1Development \
--certificateid CNNxFC9eNG677hVbw7-podN-VV_LSS28DdqbEkAInmM \
--domain
3945123-sb1.app.netsuite.com \
--privatekeypath "$KEY_PATH"
this part works locally but not in github action while creating PR.
here is my YAML
name: NetSuite CI/CD
on:
pull_request:
branches: ["cicd_test"]
push:
branches: ["cicd_test"]
workflow_dispatch:
jobs:
validate:
runs-on: ubuntu-latest
timeout-minutes: 40
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
# Java required for SuiteCloud CLI
- name: Install Java
uses: actions/setup-java@v4
with:
distribution: oracle
java-version: "17"
- name: Install SuiteCloud CLI
run: npm install -g --acceptSuiteCloudSDKLicense @oracle/suitecloud-cli
# ----------------------------------------------------
# Verify secrets are available (SAFE CHECK)
# ----------------------------------------------------
- name: Verify CI secrets
env:
SUITECLOUD_CI_PASSKEY: ${{ secrets.SUITECLOUD_CI_PASSKEY }}
run: |
if [ -z "$SUITECLOUD_CI_PASSKEY" ]; then
echo "❌ SUITECLOUD_CI_PASSKEY is missing"
exit 1
fi
if [ -z "${{ secrets.SDF_PRIVATE_KEY_B64 }}" ]; then
echo "❌ SDF_PRIVATE_KEY_B64 is missing"
exit 1
fi
echo "✅ Required secrets are present"
# ----------------------------------------------------
# SuiteCloud OAuth 2.0 (M2M) Account Setup
# ----------------------------------------------------
- name: SuiteCloud account setup (CI - OAuth 2.0 M2M)
shell: bash
env:
SUITECLOUD_CI_PASSKEY: ${{ secrets.SUITECLOUD_CI_PASSKEY }}
run: |
KEY_PATH="$GITHUB_WORKSPACE/private.pem"
echo "${{ secrets.SDF_PRIVATE_KEY_B64 }}" | base64 --decode > "$KEY_PATH"
chmod 600 "$KEY_PATH"
suitecloud account
setupci \
--account 3945123_SB1 \
--authid sb1Development \
--certificateid CNNxFC9eNG677hVbw7-podN-VV_LSS28DdqbEkAInmM \
--domain
3945123-sb1.app.netsuite.com \
--privatekeypath "$KEY_PATH"
# Install project dependencies
- name: Install npm dependencies
run: npm ci --acceptSuiteCloudSDKLicense
# Verify tool versions (optional but useful)
- name: Verify versions
run: |
node -v
npm -v
suitecloud --version
# Validate SDF project
- name: Validate SDF Project
run: npm run validate