@fjvargas/fjv-test-slds-vue
v1.1.5
Published
Front-end JS library.
Downloads
1
Readme
SLDS-VUE
A component library which implements Salesforce Lightning Design System using Vue.
Github Packages Configuration
This library is locked behind a Github Organization requiring SSO authentication. Follow the instructions in this Quip document before attempting to install the package.
Install
Use this command to install the package to your nodejs project. This package is private and you will need access keys to download.
npm install @sfmaps/slds-vue
Notes
- I bypassed 3PP checks to finalize the SLDS-vue PoC - see here for details on how to bypass checks on PRs
- This project is instrumented on SonarQube - SonarQube SLDS-VUE project
Storybook upgrade checks issue
Storyboook has a feature to check npm.js and see if there is a newer version of the app. Node.js apps respect http_proxy and https_proxy env veraibles in Falcon but storybook expects the value to include the protocol -- either http:// or https://. Falcon omits that out of the box in its k8s env vars. This generates a somewhat missleading error when you first try to start storybook and it exits out causing the pod to crash.
I added commands to unset those variables but I need to come up with a more elegant solution. Maybe we can configure storybook to not check for upgrades. The workload will not have internet access anyway.
readonly container volumes in Falcon
Falcon containers are set to read-only by default so storybook fails to run because it needs a read-write cache folder. We added a read-write volume following these steps.
files for cleanup
.gitlab-ci.yml
this was the old gitlab pipeline definition. should be removed.vscode/
should be added to .gitignore as the whole folder, not just the contents. remove from repo for claritycoverage/
should be added to .gitignore as the whole folder, not just the contentslib/
should be added to .gitignore as the whole folder, not just the contents.terraform-config/
used in github.com pipeline to upload storybook to S3. should be deprecated after migration.github/workflows
used in github.com pipeline. should be deprecated after migrationjs
used in github.com pipeline to build and publish. need to refactor into SFCI. should be deprecated after migration is completepatches/
what is this for?
NPM scripts for cleanup
build
is not in usestorybook
has the wrong folder for the "static (-s)" option. should be .out
TODO
- use env variables everywhere for docker images. health_probe app, storybook need to use variables for ports set in Dockerfile
- update high priority npm vulnerabilities
- disable HPA in helm addon
- try gravitron build
Run the container image locally
To build and run the container image locall run these commands. Your docker engine needs to have access to Salesforce's docker repositories. The container in Falcon will run with read-only volumes. We need to add an ephemeral read-write volume for caching storybook elements. The command below mimmics the use of read-only container and one ephemeral storage volume for caching.
docker build . -t slds-vue
docker run -p 9001:9001 -p 15372:15372 --read-only -v $(pwd)/.cache:/app/.cache slds-vue
To test the endpoints use these commands:
curl http://localhost:15372/manage/health
curl http://localhost:15372/manage/ready
curl http://localhost:9001
I need to add this to the actual README.md once the last PR is merged in
Nexus
Configure locally
https://confluence.internal.salesforce.com/display/NEXUS/Nexus+NPM+Repositories#DeveloperSetupOptions--1997548570
Web interface -> https://nexus-dev.data.sfdc.net/nexus/
NPM-semantic release https://git.soma.salesforce.com/pages/sfci/sfci-managed-preprocessor/managed-steps/#parameters-19
TODO
need to add relevant file names to .npmignore. In SFCI, It's picking up everything in this repo and also inside the SFCI run (.sfci folder is one).
error on patch
patch-package 6.5.1
Applying patches...
No patch files found
(node:6507) [DEP0147] DeprecationWarning: In future versions of Node.js, fs.rmdir(path, { recursive: true }) will be removed. Use fs.rm(path, { recursive: true }) instead
(Use `node --trace-deprecation ...` to show where the warning was created)
- deprecated stuff
npm warn deprecated [email protected]: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated [email protected]: Rimraf versions prior to v4 are no longer supported
npm warn deprecated [email protected]: Rimraf versions prior to v4 are no longer supported
npm warn deprecated [email protected]: Rimraf versions prior to v4 are no longer supported
npm warn deprecated @humanwhocodes/[email protected]: Use @eslint/config-array instead
npm warn deprecated [email protected]: Rimraf versions prior to v4 are no longer supported
npm warn deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm warn deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm warn deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm warn deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm warn deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm warn deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm warn deprecated @humanwhocodes/[email protected]: Use @eslint/object-schema instead
- vulnerabilities
8 vulnerabilities (1 moderate, 7 high)
- test execution results
10:54:26 sonarqube | INFO: Sensor Generic Test Executions Report
10:54:26 sonarqube | INFO: Parsing /cix/src/coverage/test-results.xml
10:54:31 sonarqube | INFO: Time spent writing ucfgs 385ms
10:54:31 sonarqube | INFO: ------------------------------------------------------------------------
10:54:31 sonarqube | INFO: EXECUTION FAILURE
10:54:31 sonarqube | INFO: ------------------------------------------------------------------------
10:54:31 sonarqube | INFO: Total time: 43.001s
10:54:31 sonarqube | INFO: Final Memory: 43M/168M
10:54:31 sonarqube | INFO: ------------------------------------------------------------------------
10:54:31 sonarqube | ERROR: Error during SonarScanner execution
10:54:31 sonarqube | ERROR: Error during parsing of generic test execution report '/cix/src/coverage/test-results.xml'. Look at the SonarQube documentation to know the expected XML format.
10:54:31 sonarqube | ERROR: Caused by: Unknown XML node, expected "testExecutions" but got "testsuites" at line 2
10:54:31 sonarqube | ERROR:
10:54:31 sonarqube | ERROR: Re-run SonarScanner using the -X switch to enable full debug logging.
Reference repos
simple versioning for package https://git.soma.salesforce.com/dva-stratafile-smoketests/managed-npm-test/blob/master/.strata.yml#L19
test execution parameters -> https://confluence.internal.salesforce.com/display/public/ZEN/Test+execution+parameters
Nexus write access request
https://gus.lightning.force.com/lightning/r/ADM_Work__c/a07EE00001zWTanYAG/view
IdentityIQ successfully created the Active Directory (AD) Group below.
Domain AD Group Group Owner Requested By Approvers
Active Directory EL_NexusTeam-Maps Fernando Vargas
Fernando Vargas Brian Hubbard Fernando Vargas
This ticket was closed with the following message:
V N S B A Mohan Satyavarapu
Edited September 9, 2024 at 11:04 PM
@Fernando Vargas to publish packages to npmjs-internal need to file a [Concierce ticket](https://concierge.it.salesforce.com/articles/en_US/Supportforce_Article/Nexus-Access-Request) requesting to be added to the "Nexus NPM Full" LDAP group. Please follow this [document](https://confluence.internal.salesforce.com/pages/viewpage.action?spaceKey=NEXUS&title=Nexus+NPM+Repositories#sections-1003994483) for further infromation
This is the new access request (Sept 16, 2024) -> https://iga.internal.salesforce.com/identityiq/identityRequest/identityRequest.jsf#/request/0001826566
TODO: I think I need to remove the EL_NexusTeam-Maps group as it will not be used.