Installing AppScan 360° with Helm
💡 Best Practice: It is recommended to run AppScan 360 Setup Assistant before every new installation or major upgrade to ensure environmental readiness and prevent installation failures.
A Helm installation of AppScan 360° requires a persistent, reliable Internet connection in addition the requirements for setting up the AppScan 360° environment. The system must be able in download Helm charts from HCL Harbor regularly.
- Verify that you have a stable and persistent Internet connection for downloading Helm charts from GitHub, and for fetching Docker images and Helm packages from HCL Harbor.
- The configuration file is available and named properly.
Install helmfile
- Download the helmfile binary
file:
wget -O helmfile.tar.gz $(curl -s https://api.github.com/repos/helmfile/helmfile/releases/latest | grep browser_download_url | grep linux_amd64.tar.gz | cut -d '"' -f 4) - Extract the
archive:
tar -xvzf helmfile.tar.gz - Move the helmfile binary to an appropriate local directory. For example,
usr/local/bin/.sudo mv helmfile /usr/local/bin/ - Give executable permission to the
file:
sudo chmod +x /usr/local/bin/ sudo chmod +x /usr/local/bin/helmfile - Verify the
installation:
helmfile --versionNote: Always verify you are using the intended version to ensure consistency across deployments. If the Helm version is upgraded to 4, the Helmfile binary must also be updated to the latest version.
Setup the Harbor connection
- Use the Docker login with your
usernameandpasswordas defined incli-secret:docker login hclcr.io - Set environment variables for the
docker/config.jsonfile:export HCLCR_USERNAME=<harbor-username> export HCLCR_PASSWORD=<harbor-password/cli-secret> - Set environment variables for base64
encoding:
export AS360_KNI_JSON_CONFIG_AS_BASE64="<base64-value-of-docker-config.json>"
Setup the GitHub repository
git clone https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-FilesAppScan-360-Helm-Files
├── Copy Artifacts
│ ├── artifactList.txt # List of images/charts to sync
│ ├── copy-artifacts.sh # The synchronization script
├── Helm.d
│ ├── helmfile-ASCP.yaml.gotmpl
│ ├── helmfile-ASRA.yaml.gotmpl
│ ├── helmfile-SCA.yaml.gotmpl
│ ├── helmfile-DTCS.yaml.gotmpl
│ └── helmFileCustomization
│ └── singular-singular.clusterKit-Sample.yaml # Main config file
├── helmfile.yaml.gotmpl
└── README.mdInstall AppScan 360°
AppScan-360-Helm-Files),
run:helmfile syncInclude Software Composition Analysis (SCA)
includeSCA=true helmfile syncincludeSCA=true helmfile destroyexport SCA_AUTOUPDATER_REGISTRY_USERNAME=<HCL_HARBOR_USERNAME>
export SCA_AUTOUPDATER_REGISTRY_PASSWORD=<HCL_HARBOR_PASSWORD>Dast Template Converter Service (DTCS)
By default DTCS is installed along with AppScan360 other components.
In case customer doesn’t want to have Dast technology installed, they can skip this component by following command.
excludeDTCS=true helmfile syncexcludeDTCS=true helmfile destroyUnified namespace support
helmfile -n hcl-appscan-as360 syncTo
uninstall from a unified
namespacehelmfile -n hcl-appscan-as360 destroyVersion support using Git tags and archives
AppScan 360° supports version-controlled installation using Git tags and archives.git clone
https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-Files.gitX.X.X is the specific version
number:git clone --branch vX.X.X
https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-Files.gitX.X.X is the specific version
number:wget https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-Files/archive/refs/tags/vX.X.X.zipX.X.X is the specific version
number:unzip AppScan-360-Helm-Files-vX.X.X.ziportar -xvzf AppScan-360-Helm-Files-vX.X.X.tar.gzTroubleshooting Helm installation
- Release names:
Component Release name Namespace AppScan 360° platform appscan360-ascphcl-appscan-ascpAppScan Remediation Advisories asrahcl-appscan-asraSoftware Composition Analysis (SCA) (Optional) scaserviceshcl-appscan-sca -
No state file foundThe state file must be namedhelmfile.d/*.- Navigate to
AppScan-360-Helm-Files -> helm.d - Run
run helmfile sync
- Navigate to
-
./helmfile.yaml: in .helmfiles[0]: in helm.d/helmfile-ASCP.yaml: failed processing release appscan360-ascp: values file matching "helmFileCustomizations/singular-singular.clusterKit.yaml" does not exist in "."The properties file (
singular-singular.clusterKit.yaml) is missing. Verify the file is in the correct location and try again. -
Failed to pull helm-packages or docker imagesThe Docker login is missing, or
HCLCR_USERNAMEandHCLCR_PASSWORDenvironment variable is missing. Verify the login information and try again. -
Failed to get pull secretThe
.docker/config.jsonfile is missing orAS360_KNI_JSON_CONFIG_AS_BASE64with appropriate value is not defined. Verify the login information and try again.