This guide details the new workflow for the Adyen Connector project, focused on environment isolation, E2E test automation, and security, using the Corebiz CLI.
1. Environment Preparation
Before any task, ensure your environment is properly set up according to your operating system.
1.1 Windows Setup (via WSL2)
📌 Note: Compatible with Windows 10 (Build 19041+) and Windows 11. Use Ubuntu 22.04/24.04.
- Install WSL: Open PowerShell as Admin and run
wsl --install. Restart your machine. - Install Ubuntu: Run
wsl --install -d Ubuntu-24.04. - Install Homebrew:
_10/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"_10echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc_10source ~/.bashrc
- Install Dependencies:
_10brew install node yarn jq pv gitleaks osv-scanner semgrep trivy bandit zip_10yarn global add @lhci/cli sfcc-ci vtex
- Install Corebiz CLI:
_10curl -ksSL https://santiago.corebiz.cl/cncli/install.sh | bash_10cb setting:token gitlab # Use a GitLab PAT with 'api' and 'write_repository' scopes
1.2 MacOS Setup
- Install Homebrew:
_10/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"_10echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc_10source ~/.zshrc
- Install Dependencies:
_10brew install node yarn jq pv gitleaks osv-scanner semgrep trivy bandit zip_10yarn global add @lhci/cli sfcc-ci vtex
- Install Rosetta 2 (Apple Silicon only):
_10/usr/sbin/softwareupdate -install-rosetta -agree-to-license
- Install Corebiz CLI:
_10curl -ksSL https://santiago.corebiz.cl/cncli/install.sh | bash_10cb setting:token gitlab
1.3 Linux Setup (Ubuntu/Debian)
- Install Homebrew:
_10/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"_10test -d ~/.linuxbrew && eval "$(~/.linuxbrew/bin/brew shellenv)"_10test -d /home/linuxbrew/.linuxbrew && eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
- Install Dependencies:
_10brew install node yarn jq pv gitleaks osv-scanner semgrep trivy bandit zip_10yarn global add @lhci/cli sfcc-ci vtex
- Install Corebiz CLI:
_10curl -ksSL https://santiago.corebiz.cl/cncli/install.sh | bash_10cb setting:token gitlab
2. Docker Setup (Optional)
Development and testing environments can be containerized using Docker for consistency.
2.1 Windows & MacOS
Download and Install Docker Desktop following the Official Documentation.
2.2 Linux (Ubuntu/Debian)
- Follow the Official Docker Engine Installation.
- Configure Permissions: Add your user to the
dockergroup to run commands withoutsudo:Note: You may need to log out and back in for this to take effect._10sudo groupadd docker_10sudo usermod -aG docker ${USER}
3. Starting a Task
Never create branches or workspaces manually. Use the automated workflow to ensure standardization.
_10# 1. Ensure you are on the updated master branch_10git checkout master && git pull origin master_10_10# 2. Start the task (The CLI will create the feat/ID branch and the corresponding VTEX workspace)_10cb vtex wf init_10_10# 3. Final authentication_10cb vtex login_10yarn install_10vtex setup
4. Development Standards
- Semicolons: NEVER use a semicolon
;at the end of statements (mandatory lint rule). - Imports:
AuthorizationRequestfrom@vtex/payment-provider.ServiceContextfrom@vtex/api.
5. Local Validations and Security
_10# Run full validation (Husky runs this automatically on commit)_10cb vtex test precommit_10_10# Run only secrets scan_10cb vtex test gitleaks
6. Commits and Push
We follow the Conventional Commits standard with a mandatory IMPACT section.
_10git commit -m "feat: your description | IMPACT: Your business impact"_10git push origin feat/your-branch
7. Pipeline Flow (QA & Production)
- Homologation: Open an MR to
homolog. A Dynamic Workspace is created, and Smoke Test E2E is triggered. - Release Candidate: Created from
homologat the end of the sprint. Triggers Full E2E Regression. - Production: MR from RC to
master. Final deployment to the Adyen account.
💡 Troubleshooting Tips
- 3DS Error? Check if the
qa-testspipeline completed the Admin setup job. - Concurrency: GitLab manages the QA account queue automatically via
resource_group. - Memory: CI is configured to allocate 4GB for builds automatically.