Package Exports
- angular-cli-ghpages
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (angular-cli-ghpages) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
angular-cli-ghpages
Angular CLI addon. Publish to any gh-pages branch on GitHub (or any other branch on any other remote).
Made for Travis-CI. Brought to you by the angular2buch.de team!
About
This is similar to the normal github-pages:deploy
command.
But by design, the command is limited to the gh-pages
branch of the same repository.
In contrast to this, the Angular2Buch/angular-cli-ghpages addon is able to push to any branch on any repository. It's build on top of tschaub/gh-pages. This addon works great on Travis-CI. No git credentials must be set up in before. Specific environment variables of Travis-CI are evaluated, too. You will like it!
angular-cli-ghpages was sucessfully tested against angular-cli: 1.0.0-beta.11-webpack.2
.
Installation & Setup
This addon has the following prerequisites:
- Node.js 4.x
- Git 1.7.6 or higher
- Angular project created via angular-cli
To install this addon run the following command:
cd <your-angular-cli-project>
npm install angular-cli-ghpages --save-dev
Usage
Execute ng ghpages
in order to deploy the project with a production
build.
Usage:
ng ghpages [OPTIONS]
Options
--repo
- optional
- default: url of the origin remote of the current dir (assumes a git repository)
By default, gh-pages assumes that the current working directory is a git repository, and that you want to push changes to the origin
remote. If instead your script is not in a git repository, or if you want to push to another repository, you can provide the repository URL in the repo
option.
--message
- optional
- default:
Auto-generated commit
The commit message, must be wrapped in quotes.
Some handy additional text is always added, if the environment variable process.env.TRAVIS
exists (for Travis CI).
Example:
ng ghpages --message="What could possibly go wrong?"
--branch
- optional
- default:
gh-pages
The name of the branch you'll be pushing to. The default uses GitHub's gh-pages
branch, but this can be configured to push to any branch on any remote.
--name & --email
- optional
- default: value of
git config user.name
andgit config user.email
If you are running the command in a repository without a user.name
or user.email
git config properties (or on a machine without these global config properties), you must provide user info before git allows you to commit. In this case provide both name
and email
string values to identify the committer.
--silent
- optional
- default:
true
(boolean)
Suppress logging. With silent true
log messages are suppressed and error messages are sanitized.
This option should be used if the repository URL or other information passed to git commands is sensitive and should not be logged (== you have a public build server). By default the silent mode is enabled to avoid sensitive data exposure.
--dir
- optional
- default:
dist
Directory for all published sources, relative to the project-root.
Most probably no change is required here, useful together with --skip-build.
This option can be used to deploy completely different folders, which are note related at all to angular.
(Hint: usual angular-cli config is ignored here!)
AND ALSO: Output path for the build, if a build is done.
--target
- optional
- default:
production
- alias:
t
Build target (development
or production
), see Build Targets and Environment Files.
--environment
- optional
- default:
prod
- alias:
e
Environment file to be used with that build (dev
, prod
or own), see Build Targets and Environment Files.
--skip-build
- optional
- default:
false
(boolean)
Skip building the project before deploying, useful together with --dir.
--dotfiles
- optional
- default:
true
(boolean)
Includes dotfiles by default. When set to false
files starting with .
are ignored.
Extra
For your convenience, the addon will recognize the environment variable GH_TOKEN
and will replace this pattern in the --repo
string. Please do NOT disable the silent mode if you have any credentials in the repository URL! Read more about Github tokens here.
In example, the following command runs on our Travis-CI:
ng ghpages --repo=https://GH_TOKEN@github.com/organisation/your-repo.git --name="Displayed Username" --email=mail@example.orf
You have to treat the GH_TOKEN as secure as a password!
License
Code released under the MIT license.