-
-
Notifications
You must be signed in to change notification settings - Fork 1
6. Deployment
This project is currently setup to deploy to Netlify using the main
and staging
branches for the angular-supastarter
and angular-supastarter-staging
sites, respectively.
Additionaly, this project offers a more robust deployment solution using Netlify, which is currently being used to deploy both the main
and staging
branches to illustrate the flexibility of the deployment solution for both staging and production deployments.
This is achieved through the use of a netlify.toml
file for deployments to Netlify. This file is located in the root directory of the project, and is used to configure the build and deploy process for the application to Netlify. This file is used to specify the build command, publish directory, and other configurations for the deployment process.
The release process uses symantic versioning, and is managed using the standard-version
package.
Semantic Versioning is a three-number versioning scheme. The version number is broken into three parts: major, minor, and patch. The major version number is incremented when incompatible API changes are made, the minor version number is incremented when new functionality is added in a backwards-compatible manner, and the patch version number is incremented when backwards-compatible bug fixes are made.
This process is automated using the .releaserc.json
file located in the root directory. This process is triggered by any merging into the main
branch, and will automatically update the CHANGELOG.md file, commit the updated CHANGELOG.md file, tag the commit with the new version number, and update the package.json file with the new version number.
This process will:
- Update the CHANGELOG.md file
- Commit the updated CHANGELOG.md file
- Tag the commit with the new version number
- Update the package.json file with the new version number
- Push the new tag to the remote repository
Additionally, a custom script is run as part of the release process to automate the versioning of the environment variables in the angular-starter/src/environments
directory. This script is located in the angular-starter/package.json
file, and is run using the following command:
npm run release
The application implements a developer footer that displays the current user's email address, UID, role type and the tenant they are in. This is useful for debugging and for ensuring that the application is working as expected. This footer is only displayed in both the development and staging environments, and is not displayed in the production environment.