Searching packages: https://stackoverflow.com/questions/10568512/how-to-find-search-find-npm-packages
npm init
Pick teh repository from which you serve the dependencies
npm config set -- "//code.siemens.com/api/v4/packages/npm/:_authToken" 12345-abcdefgH1234XYz12J
# install modules from package.json npm install
# advanced build npm install --legacy-peer-deps --no-audit --prefer-offline --registry "https://registry.npmjs.org/"
–legacy-peer-deps | avoids error “Conflicting peer dependency”, when modules transitively depend on older npm-libs to be installed. And there are none in the repository, cause they were replaced by new versions. Then the build falls back to new versions of npm-lib and hopes they work too. |
–no-audit | skip vulnerability scan |
–prefer-offline | Stale data is an artifact of caching, in which an object in the cache is not the most recent version committed to the data source. If true, staleness checks for cached data will be bypassed, but missing data will be requested from the server. |
–registry | –registry “https://registry.npmjs.org/ |
# starts the tests defined in npm test
npm run start -- --configuration mock --host 0.0.0.0 --disable-host-check --port 4300
– | allows passing arguments to the “script”, without writing them directly into the oackage.json . Here run executes “ng serve” |
–configuration mock | angular configuration defined in angular.json |
–host 0.0.0.0 –disable-host-check | angular “serve” argument. Dont bind to localhost. Allows calling from another host, like host of VM. |
–port 4300 | angular “serve” argument. starts angular app on different port. |
npm config set registry https://yoururl.com/artifactory/api/npm/npm-all npm config get registry
The file, where the config is stored is in your home dir and is called '.npmrc'
Making the npm use a special registry for some package namespace is done as following
Opens the '.npmrc' file
npm config edit
And configure the registry e.g. for the `@simpl` pacakges.
Somewhere in `.nprc` add
@simpl:registry=https://code.yourdomain.com/api/v4/packages/npm/ @simpl-labs:registry=https://code.yourdomain.com/api/v4/packages/npm/
If the repository requires authentication - there is some weird syntax allowing to add a token as authentication for a repository, using the `domain` notation <code> @simpl:registry=https://code.yourdomain.com/api/v4/packages/npm/ @simpl-labs:registry=https://code.yourdomain.com/api/v4/packages/npm/ code.yourdomain.com/api/v4/packages/npm/:_authToken=CSC-y-79x5babLxHyeWyE1xJ </code>