0.10.0 • Published 3 years ago

@spheremall_org/shared-toolbox v0.10.0

Weekly downloads
-
License
MIT
Repository
-
Last release
3 years ago

SphereMall shared toolbox

A package with common scripts that are commonly used during deployment.

List of scripts:

sm-publish-swagger

publishing swagger.json to the shared S3 bucket (tsoa spec is required before publish).

Usage example:

  • package.json:

      {
        "scripts": {
            "swagger:generate": "tsoa spec",
            "swagger:publish": "sm-publish-swagger"
        }
      }
  • bitbucket-pipelines.yml

      step:
        script:
          - npm run swagger:generate
          - npm run swagger:publish

    Requirements:

  • AWS_STATIC_BUCKET_NAME env variable

  • AWS_DEFAULT_REGION env variable

sm-output-hash-update

updating output hash for a microfrontend in mf-imports.json on a static S3 bucket.

Usage example:

  • package.json:

      {
        "scripts": {
            "output-hash-update": "sm-output-hash-update"
        }
      }
  • bitbucket-pipelines.yml

      step:
        artifacts:
          - public/**
        script:
          - npm run build
          - npm run output-hash-update

    Requirements:

  • AWS_STATIC_BUCKET_NAME env variable

  • AWS_DEFAULT_REGION env variable

pact-broker-configuration

common constant with required properties of pact broker to authorize with basic auth flow.

Usage example:

  • publish-pacts.js

    ```js
    require('dotenv').config({ path: `./.env.${process.env.NODE_ENV || 'development'}` });
    
    const pact    = require('@pact-foundation/pact-node/src/index'),
          project = require('../package.json'),
          toolbox = require('@spheremall_org/shared-toolbox');
    
    pact.publishPacts(Object.assign({
            pactFilesOrDirs: [ './pacts/files' ],
            pactBroker     : project.pactBrokerUrl,
            consumerVersion: project.version,
            tags           : [ 'latest' ]
        }, toolbox.pactBrokerConfig))
        .then(() => console.log('Pacts were successfully published!'));
    ```
    • pact.verify.spec.ts
      import pact from '@pact-foundation/pact-node';
      /**
    • For verifying pacts locally: creds for pact should not be stored in .env.test.
    • If no variable exists - load it from .env.development. */ if (!process.env.PACT_BROKER_BASE_URL) { require('dotenv').config({ path: './.env.development' }); } const project = require('../../package.json'), toolbox = require('@spheremall_org/shared-toolbox'); pact.verifyPacts(Object.assign({ providerBaseUrl : 'http://localhost:3000', provider : project.name, providerVersion : project.version, publishVerificationResult: true }, toolbox.pactBrokerConfig));

    Requirements:

  • PACT_BROKER_BASE_URL env variable

  • PACT_BROKER_USERNAME env variable
  • PACT_BROKER_PASSWORD env variable
0.10.0

3 years ago

0.9.0

3 years ago

0.8.0

3 years ago

0.7.0

3 years ago

0.6.0

3 years ago

0.3.0

3 years ago

0.2.0

3 years ago

0.5.0

3 years ago

0.4.0

3 years ago

0.1.0

3 years ago