Skip to content
Permalink
Browse files

docs(npm): update docs on publishing npm packages, update org name (g…

…ithub + npm) (#211)

* fix(docs): replace telusdigital refs with telus (github + npm)

* fix(docs): update link to recommended starter kit for npm libraries

* docs(libraries): update npm SK reference

* docs(redux): update ref to iso SK FAQ

* docs(starter-kits): update ref. to tech forum
  • Loading branch information...
ruxandrafed authored and kspaans committed Jan 25, 2019
1 parent bc1c0e1 commit 8decd8c513ed54416b25f127d9fd2770e01af5ab
@@ -22,4 +22,4 @@ The Authorization Proxy handles:

## How

The Authorization Proxy [README](https://github.com/telusdigital/authorization-proxy)
The Authorization Proxy [README](https://github.com/telus/authorization-proxy)
@@ -42,9 +42,9 @@ When consuming an API, response data should be validated whether or not validati
When handling a schema validation error, if the API is unable to finish processing the client's request, then the API should respond with the HTTP status code `503 Service Unavailable` to indicate that a downstream dependency failed.

Example:
- [Ajv validation logic](https://github.com/telusdigital/api-platform-utils/blob/master/src/validate-body/index.js)
- [Ajv validation logic](https://github.com/telus/api-platform-utils/blob/master/src/validate-body/index.js)
in `api-platform-utils`
- [Schema](https://github.com/telusdigital/api-platform-order/blob/master/src/domain/order-automation/quote/quoteResponseSchema.js) for BTO Order Management Service GET quote response in api-platform-order
- [Schema](https://github.com/telus/api-platform-order/blob/master/src/domain/order-automation/quote/quoteResponseSchema.js) for BTO Order Management Service GET quote response in api-platform-order

## References

@@ -21,25 +21,25 @@ We present www.telus.com and a few subdomains used to route to application envir

To have traffic from `http://www.wctest.telus.com/en/bc/foo/bar` proxied to your application, you need to:

1. Fork [inbound.telus-gateway-staging-config](https://github.com/telusdigital/inbound.telus-gateway-staging-config)
1. Fork [inbound.telus-gateway-staging-config](https://github.com/telus/inbound.telus-gateway-staging-config)
2. Create nginx rule(s) that matches the traffic you're wanting to serve, and proxies them to where your application is hosted
3. Create tests confirming that traffic is matched and proxies correctly [example](https://github.com/telusdigital/inbound.telus-gateway-staging-config#writing-tests)
4. Run the tests locally ([README](https://github.com/telusdigital/inbound.telus-gateway-staging-config/blob/master/README.md#set-up-everything-and-run-the-tests))
3. Create tests confirming that traffic is matched and proxies correctly [example](https://github.com/telus/inbound.telus-gateway-staging-config#writing-tests)
4. Run the tests locally ([README](https://github.com/telus/inbound.telus-gateway-staging-config/blob/master/README.md#set-up-everything-and-run-the-tests))
5. Commit your changes to a branch that contains the Jira Issue Stub, ie BMK-560
6. Submit a [pull request](https://github.com/telusdigital/inbound.telus-gateway-staging-config). If your request needs merging at a specific time, please note that in your pull request.
6. Submit a [pull request](https://github.com/telus/inbound.telus-gateway-staging-config). If your request needs merging at a specific time, please note that in your pull request.
7. Your pull request will notify the delivery team in #g-delivery. If you didn't write any tests, your pull request won't get merged.
8. Once the pull request is merged, the changes will be deployed automatically.

### Production

To have traffic from `http://www.telus.com/en/bc/foo/bar` proxied to your application, you need to:

1. Fork [inbound.telus-gateway-production-config](https://github.com/telusdigital/inbound.telus-gateway-production-config)
1. Fork [inbound.telus-gateway-production-config](https://github.com/telus/inbound.telus-gateway-production-config)
2. Create nginx rule(s) that matches the traffic you're wanting to serve, and proxies them to where your application is hosted
3. Create tests confirming that traffic is matched and proxies correctly [example](https://github.com/telusdigital/inbound.telus-gateway-production-config#writing-tests)
4. Run the tests locally ([README](https://github.com/telusdigital/inbound.telus-gateway-production-config/blob/master/README.md#set-up-everything-and-run-the-tests))
3. Create tests confirming that traffic is matched and proxies correctly [example](https://github.com/telus/inbound.telus-gateway-production-config#writing-tests)
4. Run the tests locally ([README](https://github.com/telus/inbound.telus-gateway-production-config/blob/master/README.md#set-up-everything-and-run-the-tests))
5. Commit your changes to a branch that contains the Jira Issue Stub, ie BMK-560
6. Submit a [pull request](https://github.com/telusdigital/inbound.telus-gateway-production-config). If your request needs merging at a specific time, please note that in your pull request.
6. Submit a [pull request](https://github.com/telus/inbound.telus-gateway-production-config). If your request needs merging at a specific time, please note that in your pull request.
7. Your pull request will notify the delivery team in #g-delivery. If you didn't write any tests, your pull request won't get merged.
8. Once the pull request is merged, the changes will be deployed automatically.

@@ -49,5 +49,5 @@ To have traffic from `http://www.telus.com/en/bc/foo/bar` proxied to your applic

## References

- [Preproduction](https://github.com/telusdigital/inbound.telus-gateway-staging-config)
- [Production](https://github.com/telusdigital/inbound.telus-gateway-production-config)
- [Preproduction](https://github.com/telus/inbound.telus-gateway-staging-config)
- [Production](https://github.com/telus/inbound.telus-gateway-production-config)
@@ -14,7 +14,7 @@ OpenShift also alleviates the traditional achilles heel of Jenkins: being a hype

### Jenkins starter kit

Currently we are using an OpenShift dedicated cluster. Sadly, this means we cannot update the default Jenkins Docker image, to include plugins like the Slack notifier. As such, we have extended the OpenShift image with our own, in a separate git repository. To kick off any reference architecture project, you'll need to install the [Jenkins Starter Kit](https://github.com/telusdigital/openshift-jenkins-starter-kit) to your project.
Currently we are using an OpenShift dedicated cluster. Sadly, this means we cannot update the default Jenkins Docker image, to include plugins like the Slack notifier. As such, we have extended the OpenShift image with our own, in a separate git repository. To kick off any reference architecture project, you'll need to install the [Jenkins Starter Kit](https://github.com/telus/openshift-jenkins-starter-kit) to your project.

### Jenkinsfile

@@ -44,7 +44,7 @@ Each outcome team also gets an `o-outcome-team` namespace. Only users who are ad

### OpenShift Cluster Provisioning

Our [OpenShift Cluster Provisioning](https://github.com/telusdigital/openshift-cluster-provisioning) scripts set up the baseline of our OpenShift clusters. All projects and user access roles are defined here. You'll have to submit a pull request to this git repository, if you want to set up a user, squad or project.
Our [OpenShift Cluster Provisioning](https://github.com/telus/openshift-cluster-provisioning) scripts set up the baseline of our OpenShift clusters. All projects and user access roles are defined here. You'll have to submit a pull request to this git repository, if you want to set up a user, squad or project.

### Configurations

@@ -8,7 +8,7 @@ We want a common tool to access our delivery infrastructure and development envi

The indefatigable TELUS digital delivery platform assistant.

- Clone and deploy [reference architecture](https://github.com/telusdigital/reference-architecture) starter kits
- Clone and deploy [reference architecture](https://github.com/telus/reference-architecture) starter kits
- Onboard users into OpenShift & HashiCorp Vault
- Create squads & assign tech leads & members
- Create projects & assign them to squads
@@ -60,5 +60,5 @@ Shippy core values:

## References

- [shippy-cli](https://github.com/telusdigital/shippy-cli)
- [@telusdigital/shippy-cli](https://www.npmjs.com/package/@telusdigital/shippy-cli)
- [shippy-cli](https://github.com/telus/shippy-cli)
- [@telus/shippy-cli](https://www.npmjs.com/package/@telus/shippy-cli)
@@ -67,12 +67,12 @@ To gain access to Amazon IAM, you can submit a pull request to the Data VPC IAM
### Resources

- [Elasticache Docs](http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/WhatIs.html)
- [Terraform Elasticache Module](https://github.com/telusdigital/terraform-aws_elasticache_cluster)
- [Terraform Elasticache Module](https://github.com/telus/terraform-aws_elasticache_cluster)
- [Data VPC MAIN][terraform-openshift-datavpc-main]
- [Data VPC SANDBOX][terraform-openshift-datavpc-sandbox]
- [Data VPC IAM][terraform-openshift-datavpc-iam]

[cache-control-spec]: http://httpwg.org/specs/rfc7234.html#header.cache-control
[terraform-openshift-datavpc-main]: https://github.com/telusdigital/terraform-openshift-datavpc-main
[terraform-openshift-datavpc-sandbox]: https://github.com/telusdigital/terraform-openshift-datavpc-sandbox
[terraform-openshift-datavpc-iam]: https://github.com/telusdigital/terraform-openshift-datavpc-iam
[terraform-openshift-datavpc-main]: https://github.com/telus/terraform-openshift-datavpc-main
[terraform-openshift-datavpc-sandbox]: https://github.com/telus/terraform-openshift-datavpc-sandbox
[terraform-openshift-datavpc-iam]: https://github.com/telus/terraform-openshift-datavpc-iam
@@ -17,7 +17,7 @@ The only setup necessary to get started with Renovate is to create a config file
```json
{
"extends": [
"@telusdigital"
"@telus"
]
}
```
@@ -30,10 +30,10 @@ We currently use Express v4.

### TELUS digital packages

- [express-error-handlers](https://github.com/telusdigital/express-error-handlers)
- [express-oauth2](https://github.com/telusdigital/express-oauth2) _(soon to be deprecated by Authorization Proxy)_
- [express-locale](https://github.com/telusdigital/express-locale)
- [node-utility-middlewares](https://github.com/telusdigital/node-utility-middlewares)
- [express-error-handlers](https://github.com/telus/express-error-handlers)
- [express-oauth2](https://github.com/telus/express-oauth2) _(soon to be deprecated by Authorization Proxy)_
- [express-locale](https://github.com/telus/express-locale)
- [node-utility-middlewares](https://github.com/telus/node-utility-middlewares)

## Who

@@ -30,7 +30,7 @@ Team members utilising Git and contributing to project repositories can follow [
- [Git][git]
- [GitHub][github]

[org]: https://github.com/orgs/telusdigital/people
[org]: https://github.com/orgs/telus/people
[contribution]: ../process/contribution-model.md
[github-ssh]: https://help.github.com/articles/connecting-to-github-with-ssh/
[github-gpg]: https://help.github.com/articles/signing-commits-using-gpg/
@@ -16,7 +16,7 @@ Rather than sending a blank page with a JavaScript application, an isomorphic ap

## How

The [TELUS Isomorphic Starter Kit](https://github.com/telusdigital/telus-isomorphic-starter-kit) is a boilerplate application, which is a [template](starter-kits.md) for building an Isomorphic/Universal React.js UI. It has a `client.js` and a `server.js`, which contain the relevant Isomorphic bootstrapping code. The rest of the code (the React components, the Redux state, etc.) is Universal and shared between server and client side.
The [TELUS Isomorphic Starter Kit](https://github.com/telus/telus-isomorphic-starter-kit) is a boilerplate application, which is a [template](starter-kits.md) for building an Isomorphic/Universal React.js UI. It has a `client.js` and a `server.js`, which contain the relevant Isomorphic bootstrapping code. The rest of the code (the React components, the Redux state, etc.) is Universal and shared between server and client side.

## Who

@@ -26,4 +26,4 @@ Developers, developers, developers, developers.

- [AirBnB Isomorphism](https://medium.com/airbnb-engineering/isomorphic-javascript-the-future-of-web-apps-10882b7a2ebc)
- [Isomorphism vs Universal](https://medium.com/@ghengeveld/isomorphism-vs-universal-javascript-4b47fb481beb)
- [Isomorphic Starter Kit](https://github.com/telusdigital/telus-isomorphic-starter-kit)
- [Isomorphic Starter Kit](https://github.com/telus/telus-isomorphic-starter-kit)
@@ -23,11 +23,11 @@ Any library should:
- Be explicit about dependencies
- Include documentation with example usage
- Follow the versioning strategy defined [here](versioning.md)
- Include [automated tests](https://github.com/telusdigital/reference-architecture/tree/master/testing)
- Have clear [contribution guidelines](https://github.com/telusdigital/reference-architecture/blob/master/.github/CONTRIBUTING.md)
- Use the [npm library starter Kit](https://github.com/telusdigital/npm-library-starter-kit) as a starting point.
- Include [automated tests](https://github.com/telus/reference-architecture/tree/master/testing)
- Have clear [contribution guidelines](https://github.com/telus/reference-architecture/blob/master/.github/CONTRIBUTING.md)
- Use the [npm library starter kit (@telus/create-library)](https://github.com/telus/create-library) as a starting point.

## References

- [Versioning](versioning.md)
- [npm library starter kit](https://github.com/telusdigital/npm-library-starter-kit)
- [create-library](https://github.com/telus/create-library)
@@ -63,7 +63,7 @@ We currently have three shared accounts for specific purposes:
- `npm version (major | minor | patch)`
- `git push && git push --tags`
- `npm publish`
7. If your package needs to be private and internal to TELUS Digital, reach out to one of the [Architects](https://github.com/orgs/telus/teams/digital-architecture/members) for assistance in getting the package published in the `@telusdigital` organization and with read-only permissions assigned to the `telusdigital-dev` account token.
7. If your package needs to be private and internal to TELUS Digital, reach out to one of the [Architects](https://github.com/orgs/telus/teams/digital-architecture/members) for assistance in getting the package published in the `@telus` organization and with read-only permissions assigned to the `telusdigital-dev` account token.

### Recommended file structure

@@ -26,7 +26,7 @@ React code is used on the server and client, and can be used for mobile apps. (S

The [TELUS Design System](http://tds.telus.com/) hosts and standardizes a library of React components. Where possible, the components in this library should be used rather than building new components. This ensures a consistent design language across all of our pages.

The [TELUS Isomorphic Starter Kit](https://github.com/telusdigital/telus-isomorphic-starter-kit) is the standard starting point for building isomorphic Node.js and React applications. It contains boilerplate code developers can use with minimal change. The starter kit uses [webpack](webpack.md) and [babel](babel.md) to transpile React JSX and ES2015 code into browser-native ES5 code. Isomorphism is used to pre-render React components on a server before sending them to the browser. This reduces the amount of work on the browser by completing it on the server side. After the browser receives the rendered application, the browser is able to render more React components using AJAX requests to gather data.
The [TELUS Isomorphic Starter Kit](https://github.com/telus/telus-isomorphic-starter-kit) is the standard starting point for building isomorphic Node.js and React applications. It contains boilerplate code developers can use with minimal change. The starter kit uses [webpack](webpack.md) and [babel](babel.md) to transpile React JSX and ES2015 code into browser-native ES5 code. Isomorphism is used to pre-render React components on a server before sending them to the browser. This reduces the amount of work on the browser by completing it on the server side. After the browser receives the rendered application, the browser is able to render more React components using AJAX requests to gather data.

Generally speaking, business logic should not be in the React view layer. Business logic should be placed in the backend alongside all handling of downstream data sources. The backend should also expose data that matches the React component state.

@@ -38,7 +38,7 @@ Everyone!

- [React.js](https://facebook.github.io/react/)
- [React tutorials](https://egghead.io/technologies/react)
- [TELUS Isomorphic Starter Kit](https://github.com/telusdigital/telus-isomorphic-starter-kit)
- [TELUS Isomorphic Starter Kit](https://github.com/telus/telus-isomorphic-starter-kit)
- [React Developer Tools](https://github.com/facebook/react-devtools)
- [React Native](https://facebook.github.io/react-native/)
- [ThoughtWorks Technology Radar](https://www.thoughtworks.com/radar/languages-and-frameworks/react-js)
@@ -36,9 +36,9 @@ programming, and therefore highly unit testable.
## How

Our
[TELUS isomorphic starter kit](https://github.com/telusdigital/telus-isomorphic-starter-kit)
[TELUS isomorphic starter kit](https://github.com/telus/telus-isomorphic-starter-kit)
defines our standard UI application, with React and Redux at its heart. The
[FAQ](https://github.com/telusdigital/telus-isomorphic-starter-kit/tree/master/ui#faq)
[FAQ](https://github.com/telus/telus-isomorphic-starter-kit/tree/master/app#faq)
has a lot of information about how we use Redux.

### React Component
@@ -24,9 +24,9 @@ They have been developed in a collaborative partnership with the following teams

### Ownership and updating

No one team owns the starter kits. They are worked on collaboratively, with an open-source pull-request model. The standards are managed through the weekly [Architecture Forum](https://github.com/telusdigital/architecture-forum), on [#TechMondays](https://telusdigital.atlassian.net/wiki/display/techmondays/Schedule). If you are looking for a new feature to be added, you should join the forum and open an issue, although this is not required to submit a pull request.
No one team owns the starter kits. They are worked on collaboratively, with an open-source pull-request model. The standards are managed through the weekly [Technology Forum](https://github.com/telus/technology-forum), on [#TechMondays](https://telusdigital.atlassian.net/wiki/display/techmondays/Schedule). If you are looking for a new feature to be added, you should join the forum and open an issue, although this is not required to submit a pull request.

The starter kit projects are designed to be [named anything](https://github.com/telusdigital/telus-isomorphic-starter-kit/blob/master/CLONING.md), and be [deployed to any OpenShift project](https://github.com/telusdigital/telus-isomorphic-starter-kit/blob/master/openshift/README.md). We are working on [shippy](../delivery/shippy.md) to expedite the creation of projects in GitHub, using starter kit templates.
The starter kit projects are designed to be [named anything](https://github.com/telus/telus-isomorphic-starter-kit/blob/master/CLONING.md), and be [deployed to any OpenShift project](https://github.com/telus/telus-isomorphic-starter-kit/blob/master/openshift/README.md). We are working on [shippy](../delivery/shippy.md) to expedite the creation of projects in GitHub, using starter kit templates.

### Make a change

@@ -48,6 +48,6 @@ Everyone!

## References

- [Telus Isomorphic Starter Kit](https://github.com/telusdigital/telus-isomorphic-starter-kit)
- [API Starter Kit](https://github.com/telusdigital/api-starter-kit)
- [Starter Kit Starter Kit](https://github.com/telusdigital/starter-kit-starter-kit)
- [Telus Isomorphic Starter Kit](https://github.com/telus/telus-isomorphic-starter-kit)
- [API Starter Kit](https://github.com/telus/api-starter-kit)
- [Starter Kit Starter Kit](https://github.com/telus/starter-kit-starter-kit)
@@ -103,6 +103,6 @@ Any teams deploying to www.telus.com:

[rfc-6570]: https://tools.ietf.org/html/rfc6570 "RFC 6570"

[telus-gateway-staging-config]: https://github.com/telusdigital/inbound.telus-gateway-staging-config "inbound.telus-gateway-staging-config"
[telus-gateway-staging-config]: https://github.com/telus/inbound.telus-gateway-staging-config "inbound.telus-gateway-staging-config"

[telus-gateway-production-config]: https://github.com/telusdigital/inbound.telus-gateway-production-config "inbound.telus-gateway-production-config"
[telus-gateway-production-config]: https://github.com/telus/inbound.telus-gateway-production-config "inbound.telus-gateway-production-config"

0 comments on commit 8decd8c

Please sign in to comment.
You can’t perform that action at this time.