Skip to content

Commit

Permalink
Merge branch 'master' of github.com:firebase/firebase-tools into next
Browse files Browse the repository at this point in the history
  • Loading branch information
bkendall committed Nov 12, 2019
2 parents 8114df1 + 4a41363 commit 0661970
Show file tree
Hide file tree
Showing 28 changed files with 1,779 additions and 894 deletions.
14 changes: 13 additions & 1 deletion .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,21 @@ module.exports = {
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/recommended-requiring-type-checking",
"plugin:jsdoc/recommended",
"google",
"prettier",
"prettier/@typescript-eslint",
],
"rules": {
"jsdoc/newline-after-description": "off",
"prettier/prettier": "error",
"valid-jsdoc": "off", // This is deprecated but included in recommended configs.
"no-prototype-builtins": "warn", // TODO(bkendall): remove, allow to error.
"no-restricted-globals": ["error", "name", "length"],
"no-useless-escape": "warn", // TODO(bkendall): remove, allow to error.
"prefer-const": "warn", // TODO(bkendall): remove, allow to error.
"prefer-promise-reject-errors": "warn", // TODO(bkendall): remove, allow to error.
"require-jsdoc": "warn", // TODO(bkendall): remove, allow to error.
"valid-jsdoc": "warn", // TODO(bkendall): remove, allow to error.
},
"overrides": [
{
Expand All @@ -42,6 +44,8 @@ module.exports = {
"@typescript-eslint/require-await": "warn", // TODO(bkendall): remove, allow to error.
"@typescript-eslint/unbound-method": "warn", // TODO(bkendall): remove, allow to error.
"camelcase": "warn", // TODO(bkendall): remove, allow to error.
"jsdoc/require-param-type": "off",
"jsdoc/require-returns-type": "off",
"new-cap": "warn", // TODO(bkendall): remove, allow to error.
"no-case-declarations": "warn", // TODO(bkendall): remove, allow to error.
"no-constant-condition": "warn", // TODO(bkendall): remove, allow to error.
Expand Down Expand Up @@ -86,6 +90,14 @@ module.exports = {
"plugins": [
"prettier",
"@typescript-eslint",
"jsdoc",
],
"settings": {
"jsdoc": {
"tagNamePreference": {
"returns": "return"
}
}
},
"parser": "@typescript-eslint/parser",
};
1 change: 0 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1 +0,0 @@
* Fixes a bug where rounds=0 was accepted for SHA1 hashes (#1617).
69 changes: 58 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,40 @@
# Firebase CLI [![Build Status][travis-badge]][travis-ci] [![Coverage Status][coveralls-badge]][coveralls] [![Node Version][node-badge]][npm] [![NPM version][npm-badge]][npm]

These are the Firebase Command Line Interface (CLI) Tools. They can be used to:
The Firebase Command Line Interface (CLI) Tools can be used to test, manage, and deploy your Firebase project from the command line.

* Deploy code and assets to your Firebase projects
* Run a local web server for your Firebase Hosting site
* Interact with data in your Firebase database
* Import/Export users into/from Firebase Auth

To get started with the Firebase CLI, read the full list of commands below or check out the [hosting-specific CLI documentation](https://firebase.google.com/docs/hosting/quickstart).
To get started with the Firebase CLI, read the full list of commands below or check out the [documentation](https://firebase.google.com/docs/cli).

## Installation

To install the Firebase CLI, you first need to [sign up for a Firebase account](https://firebase.google.com/).
### Node Package

Then you need to install [Node.js](http://nodejs.org/) and [npm](https://npmjs.org/). Note that
installing Node.js should install npm as well.
You can install the Firebase CLI using npm (the Node Package Manager). Note that you will need to install
[Node.js](http://nodejs.org/) and [npm](https://npmjs.org/). Installing Node.js should install npm as well.

Once npm is installed, get the Firebase CLI by running the following command:
To download and install the Firebase CLI run the following command:

```bash
npm install -g firebase-tools
```

This will provide you with the globally accessible `firebase` command.

### Standalone Binary

The standalone binary distribution of the Firebase CLI allows you to download a `firebase` executable
without any dependencies.

To download and install the CLI run the following command:

```bash
curl -sL firebase.tools | bash
```

## Commands

**The command `firebase --help` lists the available commands and `firebase <command> --help` shows more details for an individual command.**
Expand All @@ -33,30 +44,49 @@ active project alias or specify the Firebase project id with the `-P <project_id

Below is a brief list of the available commands and their function:

### Administrative Commands
### Configuration Commands

Command | Description
------- | -----------
**login** | Authenticate to your Firebase account. Requires access to a web browser.
**logout** | Sign out of the Firebase CLI.
**login:ci** | Generate an authentication token for use in non-interactive environments.
**projects:list** | Print a list of all of your Firebase projects.
**setup:web** | Print out SDK setup information for the Firebase JS SDK.
**use** | Set active Firebase project, manage project aliases.
**open** | Quickly open a browser to relevant project resources.
**init** | Setup a new Firebase project in the current directory. This command will create a `firebase.json` configuration file in your current directory.
**help** | Display help information about the CLI or specific commands.

Append `--no-localhost` to login (i.e., `firebase login --no-localhost`) to copy and paste code instead of starting a local server for authentication. A use case might be if you SSH into an instance somewhere and you need to authenticate to Firebase on that machine.

### Deployment and Local Development
### Project Management Commands

Command | Description
------- | -----------
**apps:create** | Create a new Firebase app in a project.
**apps:list** | List the registered apps of a Firebase project.
**apps:sdkconfig** | Print the configuration of a Firebase app.
**projects:addfirebase** | Add Firebase resources to a Google Cloud Platform project.
**projects:create** | Create a new Firebase project.
**projects:list** | Print a list of all of your Firebase projects.

### Deployment and Local Emulation

These commands let you deploy and interact with your Firebase services.

Command | Description
------- | -----------
**emulators:exec** | Start the local Firebase emulators, run a test script, then shut down the emulators.
**emulators:start** | Start the local Firebase emulators.
**deploy** | Deploys your Firebase project. Relies on `firebase.json` configuration and your local project folder.
**serve** | Start a local server with your Firebase Hosting configuration and HTTPS-triggered Cloud Functions. Relies on `firebase.json`.
**setup:emulators:database** | Downloads the database emulator.
**setup:emulators:firestore** | Downloads the firestore emulator.

### App Distribution Commands

Command | Description
------- | -----------
**appdistribution:distribute** | Upload a distribution.

### Auth Commands

Expand All @@ -67,7 +97,7 @@ Command | Description

Detailed doc is [here](https://firebase.google.com/docs/cli/auth).

### Database Commands
### Realtime Database Commands

Command | Description
------- | -----------
Expand All @@ -77,6 +107,23 @@ Command | Description
**database:remove** | Delete all data at a specified location in the current project's database.
**database:update** | Perform a partial update at a specified location in the current project's database. Takes input from file, STDIN, or command-line argument.
**database:profile** | Profile database usage and generate a report.
**database:instances:create** | Create a realtime database instance.
**database:instances:list** | List realtime database instances.
**database:settings:get** | Read the realtime database setting at path
**database:settings:set** | Set the realtime database setting at path.

### Extensions Commands

Command | Description
------- | -----------
**ext** | Display information on how to use ext commands and extensions installed to your project.
**ext:configure** | Configure an existing extension instance.
**ext:info** | Display information about an extension by name (extensionName@x.y.z for a specific version)
**ext:install** | Install an extension.
**ext:list** | List all the extensions that are installed in your Firebase project.
**ext:uninstall** | Uninstall an extension that is installed in your Firebase project by Instance ID.
**ext:update** | Update an existing extension instance to the latest version.


### Cloud Firestore Commands

Expand Down

0 comments on commit 0661970

Please sign in to comment.