GithubHelp home page GithubHelp logo

isabella232 / graph-gitlab Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jupiterone/graph-gitlab

0.0 0.0 0.0 1 MB

A graph conversion tool for https://gitlab.com

License: Mozilla Public License 2.0

Shell 0.06% JavaScript 0.41% TypeScript 99.53%

graph-gitlab's Introduction

JupiterOne Integration

Development Environment

Prerequisites

You must have Node.JS installed to run this project. If you don't already have it installed, you can can download the installer here. You can alternatively install Node.JS using a version manager like fnm or nvm.

Setup

Installing dependencies

First, you'll need to install yarn. Then, from the root of this project, run yarn install to install dependencies.

Loading configuration

An integration executes against a configuration that provides credentials and any other information necessary to ingest data from the provider. The configuration fields are defined in src/instanceConfigFields.ts while the configuration values are stored in a .env file at the root of this project. This allows the integration to automatically load the field values and complain when they're not provided.

Create a .env file at the root of this project and add environment variables to match what is in src/instanceConfigFields.ts. The .env file is ignored by git, so you won't have to worry about accidentally pushing credentials.

Given this example configuration:

import { IntegrationInstanceConfigFieldMap } from '@jupiterone/integration-sdk-core';

const instanceConfigFields: IntegrationInstanceConfigFieldMap = {
  clientId: {
    type: 'string',
  },
  clientSecret: {
    type: 'string',
    mask: true,
  },
};

export default instanceConfigFields;

You would provide a .env file like this:

CLIENT_ID="client-id"
CLIENT_SECRET="supersecret"

The snake cased environment variables will automatically be converted and applied to the camel cased configuration field. So for example, CLIENT_ID will apply to the clientId config field, CLIENT_SECRET will apply to clientSecret, and MY_SUPER_SECRET_CONFIGURATION_VALUE will apply to a mySuperSecretConfigurationValue configuration field.

Running the integration

To start collecting data, run yarn start from the root of the project. This will load in your configuration from src/index.ts.

Documentation

Development

Please reference the JupiterOne integration development documentation for more information on how to use the SDK.

See docs/development.md for details about how to get started with developing this integration.

Integration usage and resource coverage

More information about the resources covered by this integration and how to setup the integration in JupiterOne can be found in docs/jupiterone.md.

Changelog

The history of this integration's development can be viewed at CHANGELOG.md.

graph-gitlab's People

Contributors

adam-in-ict avatar aiwilliams avatar austinkelleher avatar ctdio avatar dependabot[bot] avatar erichs avatar extremex avatar janettelynch avatar jayson-jensen-pro avatar mknoedel avatar ndowmon avatar softwarewright avatar vdubber avatar

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.