GithubHelp home page GithubHelp logo

mitre / inspecjs Goto Github PK

View Code? Open in Web Editor NEW
6.0 18.0 4.0 2.8 MB

MIGRATED: A Typescript Library for working with InSpec data

License: Other

JavaScript 1.15% TypeScript 95.76% Shell 3.09%
inspec mitre-corporation mitre-inspec javascript vuejs

inspecjs's Introduction

MIGRATED

THIS REPOSITORY OF INSPECJS IS NO LONGER IN USE. INSPECJS HAS BEEN MIGRATED INTO A MONOREPO WITH HEIMDALL. THIS CAN BE FOUND HERE: https://github.com/mitre/heimdall2/tree/master/libs/inspecjs IMPORTANT: InspecJS is still independently published to NPM; however, this occurs upon each release of Heimdall

To update schemas install quicktype with npm install -g quicktype and use npm run gen-types

Local Testing

In order to test your inspecjs changes in another application (for example Heimdall), perform the following steps:

  1. Make your changes
  2. Run npm build
  3. In the repository you would like to test your inspecjs changes against, run npm link path/to/inspecjs
  4. Any subsequent changes to inspecjs will require an npm build in inspecjs, but not a re-link

Creating a Release

Note: This action requires appropriate privileges on the repository to perform.

  1. Ensure you have pulled the latest copy of the code locally onto your machine.
  2. Using npm version, run npm version <explicit version> or alternatively use one of the appropriate npm keywords: 'major', 'minor', 'patch', 'premajor', 'preminor', 'prepatch', or 'prerelease' to bump the version. This will push a new tag to Github.
  3. Navigate to Releases on Github and edit the release notes that Release Drafter has created for you, and assign them to the tag that you just pushed.

NOTICE

This software is currently in EARLY ALPHA DEVELOPMENT. No guarantees whatsoever are made to its safety, reliability, or accuracy with regards to the parsing and analyzing of inspec files. Do NOT use in production, and do NOT expect current API to remain stable. Use at your own risk.

NOTICE

© 2018 The MITRE Corporation.

Approved for Public Release; Distribution Unlimited. Case Number 18-3678.

NOTICE

MITRE hereby grants express written permission to use, reproduce, distribute, modify, and otherwise leverage this software to the extent permitted by the licensed terms provided in the LICENSE.md file included with this project.

NOTICE

This software was produced for the U. S. Government under Contract Number HHSM-500-2012-00008I, and is subject to Federal Acquisition Regulation Clause 52.227-14, Rights in Data-General.

No other use other than that granted to the U. S. Government, or to those acting on behalf of the U. S. Government under that Clause is authorized without the express written permission of The MITRE Corporation.

For further information, please contact The MITRE Corporation, Contracts Management Office, 7515 Colshire Drive, McLean, VA 22102-7539, (703) 983-6000.

inspecjs's People

Contributors

aaronlippold avatar amndeep7 avatar bialogs avatar dependabot[bot] avatar lukemalinowski avatar mitriol avatar sesheikholeslam avatar wdower avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

inspecjs's Issues

Update the `package.json` with needed information fields for publication

There are some missing fields in the pacakge.json which we should add for formality.

  • name: inspecjs
  • version: <$version>
  • description: 'A javascript library for working with InSpec data and MITREs Heimdall Data Format'
  • author: The MITRE Corporation
  • license: Apache-2.0
  • repository:
  "name": "heimdall-lite",
  "version": "2.0.5",
  "description": "Heimdall Lite 2.0 is a JavaScript based security results viewer and review tool supporting multiple security results formats, such as: InSpec, SonarQube, OWASP-Zap and Fortify which you can load locally, from S3 and other data sources.",
  "private": true, <== not sure if this should be true or false
  "repository": {
    "type": "git",
    "url": "https://github.com/mitre/heimdall-lite"
  },
  "license": "Apache-2.0",
  "branch": "/blob/master/",
  "readme": "README.md",
  "changelog": "CHANGELOG.md",
  "issues": "/issues/new/choose",
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "test:unit": "vue-cli-service test:unit"
  },

Formalize PR and release process

This should probably have been done a while ago considering my effective departure from the project, but here goes.

Currently, the process is as follows.

  • I create a branch, create necessary changes
  • I npm build and npm link, then test in heimdall lite.
  • If satisfied with the results, i merge the branch into master, increment the version, and git push / git publish.

Realistically, the following changes should be made:

  • The merge process should be replaced with a formalized PR process
  • The testing in heimdal lite should be replaced with a more automated jest suite.
  • The release process should be made into a script (or perhaps github action) that creates a tagged release, updates a changelog, etc.

As far as specifics, that's really for others to decide.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.