You're Invited: Meet the Socket team at BSidesSF and RSAC - April 27 - May 1.RSVP
Socket
Sign inDemoInstall
Socket

@springtree/eva-cli

Package Overview
Dependencies
Maintainers
5
Versions
40
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@springtree/eva-cli

This command line tool will be used to switch environments within eva cli projects.

1.22.2
npm
Version published
Weekly downloads
320
21.67%
Maintainers
5
Weekly downloads
 
Created
Source

eva-cli Build Status

This command line tool will be used to switch environments within eva cli projects.

Installation

Te begin using the eva-cli you need to install it globally:

npm install -g @springtree/eva-cli

If you're using nvm you may need to repeat this for each version you use

Getting started

To use this tool, you will need to setup authentication with github tokens first.

  • Have access to the SpringTree Solutions organization on github
  • Create a github personal access token for the eva-cli to confirm you have access. The token will require the read:org and read:user scopes, see github creating a personal token guide for more information here
  • Once you have the token, store it using the set-token command like so
eva set-token --token=TOKEN_HERE

If you ever need to verify if your token is still valid you can use the verify-token command like so. You can also pass any random token to it via a --token flag to check if a token is valid.

eva verify-token

You can now use the tool in any eva cli project, which require a eva-cli.json in root of the project. Which looks like so, every key in this object is explained in the eva-cli section down below.

{
    "version": 1,
    "assets": {
        "appIcon": "src/assets",
        "appLogo": "src/assets",
        "appSplashScreen": "src/assets",
        "appSplashScreenGif": "src/assets",
        "colors": "src/theme",
        "eva-config": "src/assets/env"
    },
    "framework": "ionic",
    "projectName": "eva-companion-app"
}

Usage

Once the eva-cli.json is configured correctly, and you are authenticated successfully you can use this tool by running the switch command.

eva switch

This will let you choose interactively choose a customer and target.

CI setup

For CI, you won't be calling set-token but the switch:ci command with same flags as the regular switch command. For authentication it will either look at the EVA_SWITCH_TOKEN environment variable or you can pass the token as a flag like so.

eva switch:ci --token=TOKEN_HERE

Migration

Incase you are migrating from the old npm run switch command you can use this migrate script to update the database with your projects assets. This script currently doesn't support complex migrations and will only upload assets and a project's customer reference map, which is used to display customers for a given project when the npm switch command is used. To successfully perform the migration you will need to have the environment variable GOOGLE_APPLICATION_CREDENTIALS to be set to the path of your service account file which you can obtain in the firebase project.

eva-cli.json file

The eva-cli.json file holds the configuration which the eva-cli will look at once executed, it will help the tool determine which project its being used in and which assets to fetch.

'assets' key

The assets object key will represent any project's assets defined in on the customer manager here. The key will essentially be used as an identefier to find the matching customer project asset which will be uploaded on the customer manager as well under https://eva-customer-manager.firebaseapp.com/customers/details/:customerId/:projectId The value of any key under assets will be the path where you would like to copy the uploaded asset. The copied file name will be equal to the asset id regardless of the original uploaded file name.

'eva-config' Asset key

The eva-config key here is a special one, as its a preserved key for the selected target which gets written under the file name eva-config.json

'framework' key

The framework key can be any of the values of 'ionic' | 'angular' | 'flutter' | 'react' | 'xcode' to help collect usage data and have framework specific behavior in the future.

'projectName' key

the projectName needs to be an existing project under projects in the customer manager. It will be used by the eva-cli to show you relevant customers for this project.

Commands

These are the possible commands in a nutshell as outlined here above.

Usage: eva [options] [command]

Commands:
  set-token [options] [args]     Sets the github personal access token
  switch:ci [options] [args]     Switches environment, to be used in a CI environment
  switch                         Switch eva environment interactively
  migrate [options] [args]       Migrate the current project assets
  verify-token [options] [args]  Verifies the currently saved token or the passed token is valid

FAQs

Package last updated on 20 Nov 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts