Skip to content
This repository has been archived by the owner on Mar 11, 2021. It is now read-only.

feat: simplify template management #634

Merged
merged 20 commits into from
Oct 4, 2018

Conversation

MatousJobanek
Copy link
Contributor

@MatousJobanek MatousJobanek commented Sep 17, 2018

This PR simplifies the management of the templates that are used for operations over tenant namespaces (provisions/delete/update).
The location of the templates is changed from the external projects (che, jenkins, team) to the directory environment/templates/ inside of this fabric8-tenant project. The files (templates) located in the directory and their names correspond to namespaces they are used for. All objects (contained in the templates) have been moved from the original ones (downloaded from maven central) just with small cosmetic changes - the result and the number of the objects are same.
The cosmetic changes are:

  • some of the annotations that were used by FMP are removed
  • the version of the templates corresponds to the latest commit of fabric8-tenant project
  • labels were slightly changed to not look like a java project
  • the content of fabric8-kubernetes-user-sa.yml was removed as it wasn't used anywhere
  • there is only one template for both run and stage namespaces: fabric8-tenant-deploy.yml - the name of the deploy environment is set by DEPLOY_TYPE
  • objects of the templates have been rearranged to reflect the namespaces they are used for and files they are located in

Originally, the in-production testing of the changed templates was done via PRs and by setting a release (Nexus) version in https://openshift.io/_profile/_tenant page. The in-production testing will be still possible just with a small change - it won't be downloaded from Nexus, but directly from the GH PR. That will be possible by taking sha of the latest commit in the PR and setting it on the same page as it is done currently. It will be also possible to change the repo and directory the files are downloaded from so you will not have to create a PR to test a template in production.

For better verification, I captured the requests that are sent to openshift api when the namespaces are being created. I printed out the URL and the body of each request.

TODO:

the location of the templates (used for namespace creation) is moved
from external projects to directory environment/templates/
inside of this fabric8-tenant project itself.
@codecov
Copy link

codecov bot commented Sep 19, 2018

Codecov Report

Merging #634 into master will increase coverage by 12.5%.
The diff coverage is 72.13%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #634      +/-   ##
==========================================
+ Coverage   39.94%   52.44%   +12.5%     
==========================================
  Files          26       28       +2     
  Lines        2098     1983     -115     
==========================================
+ Hits          838     1040     +202     
+ Misses       1158      825     -333     
- Partials      102      118      +16
Impacted Files Coverage Δ
configuration/configuration.go 72.9% <ø> (+21.36%) ⬆️
controller/tenant.go 14.34% <0%> (+0.16%) ⬆️
openshift/clean_tenant.go 0% <0%> (ø) ⬆️
main.go 0% <0%> (ø) ⬆️
controller/tenants.go 78.87% <100%> (-0.3%) ⬇️
utils/url.go 40% <40%> (ø)
openshift/init_tenant.go 35.64% <64.7%> (+35.64%) ⬆️
environment/service.go 70.96% <70.96%> (ø)
openshift/apply.go 55.67% <78.57%> (+28.74%) ⬆️
environment/template.go 85.82% <85.82%> (ø)
... and 13 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update bdb29d0...0418757. Read the comment docs.

@MatousJobanek
Copy link
Contributor Author

[test]

@nurali-techie
Copy link
Contributor

@MatousJobanek can you please explain (or point to some doc) which explain ..

  1. why in first place different project for each template is created.
  2. what are the fundamental problems with current approach (separate template project) and how it will be solved with new approach (all template in f8-tenant project).

@MatousJobanek
Copy link
Contributor Author

why in first place different project for each template is created.

To be honest, I have no idea what was behind this decision.

what are the fundamental problems with the current approach (separate template project) and how it will be solved with new approach (all template in f8-tenant project).

the most fundamental improvements are:

  • get rid of FMP - the f8-tenant-che/jenkins/team projects have Java structure that uses FMP to generate the templates, but the tenant projects don't have anything in common with Java and it brings just a big complexity
  • simplification
    • currently if you want to change a version of either che or jenkins you have to push a commit to one repo, make a release, then send PR to tenant service that changes the version and merge it there. Then tenant downloads the templates during build and bundles it into the binary - there are some steps that are redundant and not needed at all
    • the projects have a complex hierarchy with several snippets of the resulting template and it is sometimes hard to follow what the snippets refer to
    • we can easily remove some redundant parts of the templates
    • easier/faster in-prod testing by just referring to PR in f8-tenant project
      for more info see a part of Tenant v2 doc that refers to the Jenkins template https://docs.google.com/document/d/1HKC3A1Zwx8PSfKc01s3Ymgjd0qhLtPDbX0wDUHnt1ng/edit#heading=h.evupowqjwhx3

varTemplateDomain = "template.domain"
VarTemplateRecommenderExternalName = "template.recommender.external.name"
VarTemplateRecommenderAPIToken = "template.recommender.api.token"
VarTemplateDomain = "template.domain"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see if you can avoid export of env_var.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unexported in d574aac

NsType string
Name string
Templates []*Template
ExpiresAt *time.Time
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seems that ExpiresAt not used anywhere.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, yeah, that was taken from the complete rewrite that is ready for OSIO on OSD version :-)
removed in 767af0d

templates = templateNames["che-mt"]
templates[0].DefaultParams = cheMtParams
}
templates = templateNames[envType]
Copy link
Contributor

@nurali-techie nurali-techie Sep 21, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

line 90 should be in else part right ?? otherwise it will overwrite what is done in if on line 87.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good catch 👍 thanks
fixed in cc62221

environment/template.go Show resolved Hide resolved
Makefile Show resolved Hide resolved
if err != nil {
return objects, err
}
t.Version = vars[varCommit]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As discussed in sync meeting, it would be better if we have latest CommitSHA for given template_file rather latest CommitSHA of tenant_service. Also, check when you getting CommitSHA corresponding to template_file, you can get commit_timestamp also. If so then rather using CommitSHA, we can consider using commit_timestamp which will be more human_readable as well comparable (wrt previous and latest versioning).

@chmouel
Copy link
Contributor

chmouel commented Sep 25, 2018

Thanks for doing that, moving this out of GKE infra would have been painful too!

One thing you may want to consider now, in the future on OSD or others we may not have different namespaces by app and for example have jenkins in the main namespace, so a yaml template by namespace may not work there,

why in first place different project for each template is created.
To be honest, I have no idea what was behind this decision.

Here is the rational behind it :

image

which I guess we will lose switching to this, in anyway the fabric8 community is not there anymore.

@nurali-techie
Copy link
Contributor

why in first place different project for each template is created.
To be honest, I have no idea what was behind this decision.

Here is the rational behind it :

the mail thread - http://post-office.corp.redhat.com/archives/devtools-saas/2017-December/msg00271.html (need VPN)

@MatousJobanek it's worth to read this mail thread. I will also do so.
@chmouel thanks 👍

@MatousJobanek
Copy link
Contributor Author

@nurali-techie

as we know, on each PR submitted on template project, there is a link providing in PR to test template changes on openshift.io. With this PR, how do we achieve the similar stuff.

well, there is already a PR that changes the _tenant page. It will work in a similar way as it does now, this means that you can create a URL with parameters that automatically fill the form (eg.: _profile/_tenant?templatesRepoBlob=3be1be1).
The only thing that is missing is a bot that takes the sha of the latest commit and sends a comment with this link to the PR (only to those PRs that change any of the templates of course :-)). For that, we can use either CI job or create a new simple Ike plugin or maybe there is some bot in the Github marketplace ready for use.

@chmouel
Copy link
Contributor

chmouel commented Sep 27, 2018

The only thing that is missing is a bot that takes the sha of the latest commit and sends a comment with this link to the PR (only to those PRs that change any of the templates of course :-)). For that, we can use either CI job or create a new simple Ike plugin or maybe there is some bot in the Github marketplace ready for use.

Why we just don't do on CI ? Detect what have been changed, if it's a template file then send a comment to the PR with this link (this is how it is done in with the nexus/tempaltes) :

https://github.com/fabric8io/openshift-jenkins-s2i-config/blob/32a9765854bb1866104fb475bde5dd8e872b1bc1/.cico/setup.sh#L44-L54

@MatousJobanek
Copy link
Contributor Author

Why we just don't do on CI

yes, that would be the easiest solution - that's why I mentioned it as the first one :-)

... (this is how it is done in with the nexus/tempaltes) :
https://github.com/fabric8io/openshift-jenkins-s2i-config/blob/32a9765854bb1866104fb475bde5dd8e872b1bc1/.cico/setup.sh#L44-L54

I didn't know about this script. Thanks for the link 👍

@chmouel
Copy link
Contributor

chmouel commented Sep 27, 2018

Why we just don't do on CI

yes, that would be the easiest solution - that's why I mentioned it as the first one :-)

Oups sorry i missed this,

I didn't know about this script. Thanks for the link 👍

Just FYI, You will need to have a github token for this which is setup here :

https://github.com/openshiftio/openshiftio-cico-jobs/blob/58f964df6df7ad5814a928a0ec1a8439ca2fdad1/devtools-ci-index.yaml#L164-L169

Copy link
Contributor

@alexeykazakov alexeykazakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall looks good!
Just a few minor comments.

utils/url.go Outdated
}()

body, err := ioutil.ReadAll(resp.Body)
if err != nil {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't really need to check if err!=nil. You can "return ioutil.ReadAll(resp.Body)" here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point :-)
fixed 1c3e971

func NewConfig(config *configuration.Data, user *authclient.UserDataAttributes, clusterUser, clusterToken, clusterURL, commit string) Config {
tr := &http.Transport{
TLSClientConfig: &tls.Config{
InsecureSkipVerify: config.APIServerInsecureSkipTLSVerify(),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need that?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know to be honest :-). I just moved it from this location - it is used for the same calls as it was before.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -539,6 +539,14 @@
pruneopts = "UT"
revision = "90fa682c2a6e6a37b3a1364ce2fe1d5e41af9d6d"

[[projects]]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like you are editing Gopkg.lock manually? You are not supposed to :) See https://golang.github.io/dep/docs/Gopkg.lock.html

Use dep ensure instead.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not at all. I know that this file shouldn't be edited manually and I have never done this (at least not intentionally).
This section was added as part of dep ensure process - it is because I started using a new project for mocking HTTP calls in tests. It is gock and from my point of view, it is really powerful and easy to use. My idea is to migrate all tests (in the tenant project) that use go-vcr to gock in the future. For now, I just started using it as part of this PR.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MatousJobanek I see no dependency added in Gopkg.toml file for gopkg.in/h2non/gock.v1. I guess, we required to add it, right?

Copy link
Contributor Author

@MatousJobanek MatousJobanek Oct 3, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure if we required, but I definitely wanted to add it there, but I either forgot or it got lost after the several rebase/merge operations.
Anyway, it's been added here: 0418757
Thanks for pointing it out

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW gock looks interesting. Might be a better alternative to go-vcr indeed.

@MatousJobanek
Copy link
Contributor Author

As there were a few updates in the templates (in those versions updated in tenant master branch that I merged into this PR) I made another comparison of both version - before and after PR. I updated the gists that are referenced in the description of this PR with the latest versions. If nothing slipped out of my notice, everything should be good as the results are same.

The PR that updates the _profile/_tenant page is approved and ready to merge.

As for the template versioning. We agreed on having sha of the latest commit that changes the particular template file as its version. As I don't want to make this PR bigger and bigger, I created another one that implements this changes: #648

@MatousJobanek MatousJobanek merged commit eb5a8a4 into fabric8-services:master Oct 4, 2018
joshuawilson pushed a commit to fabric8-ui/fabric8-ui that referenced this pull request Oct 4, 2018
…-services/fabric8-tenant#634 (#3344)

* chore: change _tenant page to reflect changes comming in fabric8-services/fabric8-tenant#634

* fix(lint): switch double to single quotes
aslakknutsen added a commit to openshiftio/saas-openshiftio that referenced this pull request Oct 9, 2018
**Commit:** fabric8-services/fabric8-tenant@df67bff
**Author:** Aslak Knutsen (aslak@4fs.no)
**Date:** 2018-10-09T15:53:24+02:00

Sort Role before RoleBindingX (fabric8-services/fabric8-tenant#656)

Role should exist before we attempt to bind to it.



----


**Commit:** fabric8-services/fabric8-tenant@bc5dbfa
**Author:** Matous Jobanek (matousjobanek@gmail.com)
**Date:** 2018-10-05T09:49:21+02:00

feat: use sha of latest commit that changes a template file as its version (fabric8-services/fabric8-tenant#648)



----


**Commit:** fabric8-services/fabric8-tenant@7537946
**Author:** Matous Jobanek (matousjobanek@gmail.com)
**Date:** 2018-10-04T12:36:23+02:00

fix: initialize map before assigning to an entry in it (fabric8-services/fabric8-tenant#650)



----


**Commit:** fabric8-services/fabric8-tenant@eb5a8a4
**Author:** Matous Jobanek (matousjobanek@gmail.com)
**Date:** 2018-10-04T10:39:09+02:00

feat: simplify template management (fabric8-services/fabric8-tenant#634)

The location of the templates is changed from the external projects f8-tenant-[che|jenkins|team] to the directory environment/templates/ inside of this fabric8-tenant project. The files (templates) located in the directory and their names correspond to namespaces they are used for. All objects (contained in the templates) have been moved from the original ones (downloaded from Maven central) just with small cosmetic changes - the result and the number of the objects are same.

----
joshuawilson added a commit to openshiftio/saas-openshiftio that referenced this pull request Oct 18, 2018
* f65e037c2 style(lint): add airbnb rule overrides
* 915a75bc4 feat(angular): add angular support to scripts
* ac48d5b9f fix(header): fix capitalization of 'Create Space' in the user dropdown (#3377)
* 595e82fd4 Deployments utilization bar component can display "other spaces" utilization (#3343)
* feff1cc17 feat(scripts): add script to launch production server using http-server
* f26f5a98e fix(header): remove duplicate of spaces (#3374)
* d2b9d254a chore(lint): fix lint errors
* ec70ecd0c feat(lint): add htmlhint and angular language service support
* 4dc8160dc fix(space-dashboard): fix work-item filter query in create work-item widget (#3365)
* e93608dbf fix(codebases): fix switch component change state trigger after upgrade (#3368)
* 35ec3b9ff fix(version): Planner version upgraded to 0.56.0 (#3373)
* 5983eb0ad feat(widgets): initial setup for react widgets package
* d674abd15 fix(scripts): expose webpack configs for reuse
* 964a8b91a style(style-lint): add .md files to ignore list
* 52b949e86 style(style-lint): allow hex colors
* 3428124f5 fix(less): fix pfng list header text spacing (#3369)
* 14e010c6f feat(header): add 'Create Issue' help menu item to open GitHub issues (#3367)
* fd4f24c65 fix(stack-report-btn): fixes stack report button not appearing in pipelines view wrt recent change in stage name (#3366)
* 1d8b9c80b fix(header): fix header navbar colouring to be dark (#3364)
* b1310ad02 fix(test): skip intermittent failing test
* 04c4bd681 fix(scripts): rewire react-scripts instead of managing our own copy
* 34cde6442 fix(lint): remove promise lint rule which conflicts with typescript no unused local vars warning
* 09cf75eaf fix(lint): add common eslintrc for packages
* ad5bc32c4 feat(monorepo): initial monorepo setup (#3357)
* dc27273f7 fix(home): bring back feature flagged old dashboard (#3362)
* 6968bc976 fix(home): remove onboarding area from home page (#3361)
* a8c20a484 fix(codebases): change font weight for codebase title (#3360)
* 06bd8fbf1 fix(header): move chat with us to help section (#3359)
* 2099b3c9b clean(test): remove unused and document running unit test (#3358)
* cd786a085 fix(ngx-login-client): upgrade ngx-login-client and provide value for WIT_API_PROXY (#3354)
* 1750c3598 fix(tree-view): Fix missing expand toggle in area components (#3356)
* c73b0481b fix(tenant): modify _tenant page to reflect changes coming in fabric8-services/fabric8-tenant#634 (#3344)
* 67a5c9aba fix(package): update launcher to 2.0.8 (#3355)
* a82d70152 fix(build): switch to 'eval-source-map' for dev as it is faster on reload then 'source-map' (#3353)
* 67048fbff fix(webpack): remove sourcemap file mappings to improve locating sources in dev web inspector (#3352)
* 36787821d feat(package): update recommender to 1.0.2 (#3351)
* b02926956 fix(deployments): cache pod quota requirements (#3350)
* 57be60aa4 fix(css): omit css sourceMap in prod and extract css to separate file (#3348)
* b03be5771 fix(build): set up the build to release now that the version of semantic-release has been updated
* 7b0a564ea style(deployments): code cleanup (#3329)
* 23dc8dd47 style(settings): code cleanup (#3330)
* f3ca84ad8 feat(deployments): allow scaling only if remaining quota is sufficient (#3336)
* b22f17333 cleanup(imports): remove unused imports (#3345)
* 2087e185a refactor(overview-component): general code cleanup (#3328)
* 7f70afa85 feat(settings): show openshift cluster url in connected account section (#3332)
* 89d11a4cd cleanup(email-verification): remove unused component for email verification (#3337)
* fe17a17f4 fix(jest): add --runInBand for jest:debug (#3346)
* e45d1ce22 fix(angular): set preserveWhitespaces to true for compatibility
* 27776b77d fix(build): update build to run test script
* 093cb7870 fix(script): move the script to call jest for tests
* 35fe854e4 fix(test): skip 2 tests that fail randomly
* 8ab4eb415 fix(rxjs): add missing pipe
* 1e5b74d31 fix(rxjs): more upgrade to rxjs updates
* e573c5f36 fix(context): remove dup line from merge
* 22d9fa648 support Jest (#3342)
* b3b1b4065 fix(build): clean up tsconfig
* 9217e4b95 fix(test): skip 40 tests to get the webpack test to build
* 0a519b17a fix(test): turn on tsconfig sourcemaps to work with istanbul-instrumenter-loader
* 4be6a8bfe fix(imports): clean up imports
* 8886f6982 fix(test): comment out the .html raw-loader as it was causing the tests to not run
* c5a0d70c1 fix(test): turn off lint to save time, update changes in webpack
* cf33cbece fix(build): update webpack config to allign with latest webpack
* 456d04d2e fix(test): due to a change in angular 6, we need to set preserveWhitespaces to true
* e7b1b236d fix(test): remove whitespace that broke tests on a src ref
* 2267f07fd fix(test): add reference to test support files in webpack config
* d4e7595b3 fix(test): comment out sourcemaps to get past 'FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory'
* 195b71199 feat(package): upgarde Typescript to 3.0.3
* 08447e873 fix(test): uncomment the entry points in the test webpack config
* 30deb6750 clean(test): remove unusued func tests, moved to https://github.com/fabric8io/fabric8-test/ (#3335)
* 3a7cf4e60 fix(test-build): turn off sourcemaps in tsconfig and remove entry in webpack config to get the tests to run
* 3b28f5947 fix(build): clean up webpack configs, trying to get the tests to work
* 501947405 fix(package): downgrade TypeScript to 2.9.2 to work with Angular
* 0b6290e8d fix(package): downgrade rxjs to 5.2.2 to work with components not upgraded yet
* ddb168a10 fix(build): remove MiniCssExtractPlugin ref in build
* 5ec7a03e5 fix(rxjs-compat): downgrade to 6.2.2 ReactiveX/rxjs#4070 (#3333)
* 68c5f7c77 fix(perf): update the npm scripts to call perf correctly
* c80fd5e7c feat(build): set perf build to rely on prod
* 2e0c6efa2 fix(webpack): add ManifestPlugin
* e50752cd1 fix(webpack): fix errors with uglify in prod webpack config
* 1f5c1e78a fix(package): update the package-lock
* 0c0f27b4c feat(package): upgrade webpack to 4.19.1
* b99d79ad4 feat(package): upgrade ts-loader to 5.1.1
* a8622925a feat(package): upgrade semantic-release to 15.9.16
* 82bf44f09 feat(package): upgrade patternfly to 3.54.8
* 51482f0bd feat(package): upgrade gh-pages to 2.0.0
* 650536000 feat(package): upgrade @types/webpack to 4.4.12
* 7d78d663e feat(package): upgrade @types/node to 10.10.1
* d5a3d4038 feat(package): upgrade @ngtools/webpack 6.2.3
* 748a68069 feat(package): upgrade @angular to 6.1.8
* 685e051ea feat(package): update ngx-fabric8-wit to 8.1.1
* e3e81bd6f feat(rxjs): import rxjs-compat globally
* 02bccc047 fix(build): remove ref to non-existant type 'source-map' in the 'types' section
* 29b6fecc4 fix(version): downgrade ngrx (5.2.0) back to compatible version for planner
* 7b8567d77 fix(oauth): import oauth module instead of service
* f6428a17d fix(http): remove unused http import and injection
* b947ffdcd feat(build): change webpack to not use extractCSS and prep for using MiniCssExtractPlugin
* c77b046fe feat(auth): add the auth interceptor
* d5cb990c7 fix(version): upversion ngx-fabric8-wit and use new API
* ed2c34f3a fix(webpack): fix errors with loading css due to extract text plugin (#3326)
* 427f910da fix(package): put back @types/source-map 0.5.7 to fix a source-map issue with rxjs
* 4c8d96ff5 fix(webpack): change webpack chunking and optimizations so that  main bundle is included in html template
* 225569c8b fix(package): downgrade angular-tree-component to ^7.0.0 to match patternfly
* 433e9d567 fix(webpack): source-map-loader warnings on rxjs compat (#3325)
* ff7eaab27 fix(auth): clean up import of angular-oauth2-oidc
* 5aaadeabe fix(package): downgrade bootstrap to work with patternfly
* 149ef2413 fix(rxjs): upgrade use of observableNever in space service spec
* e96f4b457 fix(profile): remove test of error that doesn't catch error (and doesn't compile)
* 1add86e7e fix(auth): update lib ref for angular-oauth2-oidc
* 8e86721df feat(build): update the test configs in trying to get the unit tests to run
* a49b141b5 feat(package): upgrade Typescript to 3.0.3 to get the ts-loader to work, this might break angular
* d1fec3210 fix(lint): fix lint errors with imports
* 5afd4a93e fix(build:dev): remove awesone-typescript plugin and unsued UgliflyPlugin for dev build
* 02c85241a fix(rxjs): Upgrade Scheduler import, fix Type information
* 9a46d82dd clean(formatting): tslint for import statement
* e8b465479 fix(TS2339): TS error on connect needed cast as ConnetableObservable
* 36466cfca fix(rxjs): change the ref to observable 'empty' so that it could be called
* 536c98476 fixup fix(treelist): point the treelist to patternfly-sandbox-ng so we can keep using it for now
* eca819044 feat(package): add patternfly-sandbox-ng
* 3d80d9b17 feat(lint): fix lint errors and upgrade rxjs syntax
* c5c8f5772 feat(http): remove old fabric8-ui-http.service
* b3d637958 feat(package): update libs
* f8bd623ac feat(http): remove refrence to login-client HttpService
* 5ed3bb4fc feat(build): remove gendir, instead look at using skipTemplateCodeGen
* 5aa429ac3 feat(http): update app.module to use ng6 httpClient
* 57482af47 feat(injectionToken): replace OpaqueToken with InjectionToken
* 3a6860968 feat(build): remove old webpack plugins and replace with 'optimization' config
* 257f8ba1a feat(build): add wepback mode to configs
* a67fbeae1 feat(package): update lock file
* 335dc2a76 feat(package): update webpack to 4.18.0
* 1a96289a3 feat(package): update angular-oauth2-oidc to 4.0.3
* 1bfafa700 feat(package): update lib versions
* 4029406ba fix(package): update package-lock
* 2dcd37002 feat(build): update test build/configs for webpack 4
* 07f937ddc fix(build): alphebetize the tsconfigs
* a0cbe4942 feat(lint): add RxJS lint rules
* 6adceca5d feat(package): set yargs to 12.0.1
* 63226e529 feat(package): remove angular2-tree-component@3.1.0. The new version is angular-tree-component.
* 41ee895af feat(package): remove angular2-oauth2@1.3.10. The new version of this lib is called angular-oauth2-oidc.
* 1b4fa7703 fix(package): @types/source-map@0.5.7 is a stub types definition for source-map and isn't needed
* 7a1592683 feat(package): update @angular to 6.1.6
* 07c34d54c fix(license): add a file ext to the LICENSE
* 81cd83a6a (tag: v1.121.0, matousjobanek/master) feat(recent): introduce recent-utils to be extended by context and spaces service for "recent" logic (#3341)
joshuawilson added a commit to openshiftio/saas-openshiftio that referenced this pull request Oct 18, 2018
* f65e037c2 style(lint): add airbnb rule overrides
* 915a75bc4 feat(angular): add angular support to scripts
* ac48d5b9f fix(header): fix capitalization of 'Create Space' in the user dropdown (#3377)
* 595e82fd4 Deployments utilization bar component can display "other spaces" utilization (#3343)
* feff1cc17 feat(scripts): add script to launch production server using http-server
* f26f5a98e fix(header): remove duplicate of spaces (#3374)
* d2b9d254a chore(lint): fix lint errors
* ec70ecd0c feat(lint): add htmlhint and angular language service support
* 4dc8160dc fix(space-dashboard): fix work-item filter query in create work-item widget (#3365)
* e93608dbf fix(codebases): fix switch component change state trigger after upgrade (#3368)
* 35ec3b9ff fix(version): Planner version upgraded to 0.56.0 (#3373)
* 5983eb0ad feat(widgets): initial setup for react widgets package
* d674abd15 fix(scripts): expose webpack configs for reuse
* 964a8b91a style(style-lint): add .md files to ignore list
* 52b949e86 style(style-lint): allow hex colors
* 3428124f5 fix(less): fix pfng list header text spacing (#3369)
* 14e010c6f feat(header): add 'Create Issue' help menu item to open GitHub issues (#3367)
* fd4f24c65 fix(stack-report-btn): fixes stack report button not appearing in pipelines view wrt recent change in stage name (#3366)
* 1d8b9c80b fix(header): fix header navbar colouring to be dark (#3364)
* b1310ad02 fix(test): skip intermittent failing test
* 04c4bd681 fix(scripts): rewire react-scripts instead of managing our own copy
* 34cde6442 fix(lint): remove promise lint rule which conflicts with typescript no unused local vars warning
* 09cf75eaf fix(lint): add common eslintrc for packages
* ad5bc32c4 feat(monorepo): initial monorepo setup (#3357)
* dc27273f7 fix(home): bring back feature flagged old dashboard (#3362)
* 6968bc976 fix(home): remove onboarding area from home page (#3361)
* a8c20a484 fix(codebases): change font weight for codebase title (#3360)
* 06bd8fbf1 fix(header): move chat with us to help section (#3359)
* 2099b3c9b clean(test): remove unused and document running unit test (#3358)
* cd786a085 fix(ngx-login-client): upgrade ngx-login-client and provide value for WIT_API_PROXY (#3354)
* 1750c3598 fix(tree-view): Fix missing expand toggle in area components (#3356)
* c73b0481b fix(tenant): modify _tenant page to reflect changes coming in fabric8-services/fabric8-tenant#634 (#3344)
* 67a5c9aba fix(package): update launcher to 2.0.8 (#3355)
* a82d70152 fix(build): switch to 'eval-source-map' for dev as it is faster on reload then 'source-map' (#3353)
* 67048fbff fix(webpack): remove sourcemap file mappings to improve locating sources in dev web inspector (#3352)
* 36787821d feat(package): update recommender to 1.0.2 (#3351)
* b02926956 fix(deployments): cache pod quota requirements (#3350)
* 57be60aa4 fix(css): omit css sourceMap in prod and extract css to separate file (#3348)
* b03be5771 fix(build): set up the build to release now that the version of semantic-release has been updated
* 7b0a564ea style(deployments): code cleanup (#3329)
* 23dc8dd47 style(settings): code cleanup (#3330)
* f3ca84ad8 feat(deployments): allow scaling only if remaining quota is sufficient (#3336)
* b22f17333 cleanup(imports): remove unused imports (#3345)
* 2087e185a refactor(overview-component): general code cleanup (#3328)
* 7f70afa85 feat(settings): show openshift cluster url in connected account section (#3332)
* 89d11a4cd cleanup(email-verification): remove unused component for email verification (#3337)
* fe17a17f4 fix(jest): add --runInBand for jest:debug (#3346)
* e45d1ce22 fix(angular): set preserveWhitespaces to true for compatibility
* 27776b77d fix(build): update build to run test script
* 093cb7870 fix(script): move the script to call jest for tests
* 35fe854e4 fix(test): skip 2 tests that fail randomly
* 8ab4eb415 fix(rxjs): add missing pipe
* 1e5b74d31 fix(rxjs): more upgrade to rxjs updates
* e573c5f36 fix(context): remove dup line from merge
* 22d9fa648 support Jest (#3342)
* b3b1b4065 fix(build): clean up tsconfig
* 9217e4b95 fix(test): skip 40 tests to get the webpack test to build
* 0a519b17a fix(test): turn on tsconfig sourcemaps to work with istanbul-instrumenter-loader
* 4be6a8bfe fix(imports): clean up imports
* 8886f6982 fix(test): comment out the .html raw-loader as it was causing the tests to not run
* c5a0d70c1 fix(test): turn off lint to save time, update changes in webpack
* cf33cbece fix(build): update webpack config to allign with latest webpack
* 456d04d2e fix(test): due to a change in angular 6, we need to set preserveWhitespaces to true
* e7b1b236d fix(test): remove whitespace that broke tests on a src ref
* 2267f07fd fix(test): add reference to test support files in webpack config
* d4e7595b3 fix(test): comment out sourcemaps to get past 'FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory'
* 195b71199 feat(package): upgarde Typescript to 3.0.3
* 08447e873 fix(test): uncomment the entry points in the test webpack config
* 30deb6750 clean(test): remove unusued func tests, moved to https://github.com/fabric8io/fabric8-test/ (#3335)
* 3a7cf4e60 fix(test-build): turn off sourcemaps in tsconfig and remove entry in webpack config to get the tests to run
* 3b28f5947 fix(build): clean up webpack configs, trying to get the tests to work
* 501947405 fix(package): downgrade TypeScript to 2.9.2 to work with Angular
* 0b6290e8d fix(package): downgrade rxjs to 5.2.2 to work with components not upgraded yet
* ddb168a10 fix(build): remove MiniCssExtractPlugin ref in build
* 5ec7a03e5 fix(rxjs-compat): downgrade to 6.2.2 ReactiveX/rxjs#4070 (#3333)
* 68c5f7c77 fix(perf): update the npm scripts to call perf correctly
* c80fd5e7c feat(build): set perf build to rely on prod
* 2e0c6efa2 fix(webpack): add ManifestPlugin
* e50752cd1 fix(webpack): fix errors with uglify in prod webpack config
* 1f5c1e78a fix(package): update the package-lock
* 0c0f27b4c feat(package): upgrade webpack to 4.19.1
* b99d79ad4 feat(package): upgrade ts-loader to 5.1.1
* a8622925a feat(package): upgrade semantic-release to 15.9.16
* 82bf44f09 feat(package): upgrade patternfly to 3.54.8
* 51482f0bd feat(package): upgrade gh-pages to 2.0.0
* 650536000 feat(package): upgrade @types/webpack to 4.4.12
* 7d78d663e feat(package): upgrade @types/node to 10.10.1
* d5a3d4038 feat(package): upgrade @ngtools/webpack 6.2.3
* 748a68069 feat(package): upgrade @angular to 6.1.8
* 685e051ea feat(package): update ngx-fabric8-wit to 8.1.1
* e3e81bd6f feat(rxjs): import rxjs-compat globally
* 02bccc047 fix(build): remove ref to non-existant type 'source-map' in the 'types' section
* 29b6fecc4 fix(version): downgrade ngrx (5.2.0) back to compatible version for planner
* 7b8567d77 fix(oauth): import oauth module instead of service
* f6428a17d fix(http): remove unused http import and injection
* b947ffdcd feat(build): change webpack to not use extractCSS and prep for using MiniCssExtractPlugin
* c77b046fe feat(auth): add the auth interceptor
* d5cb990c7 fix(version): upversion ngx-fabric8-wit and use new API
* ed2c34f3a fix(webpack): fix errors with loading css due to extract text plugin (#3326)
* 427f910da fix(package): put back @types/source-map 0.5.7 to fix a source-map issue with rxjs
* 4c8d96ff5 fix(webpack): change webpack chunking and optimizations so that  main bundle is included in html template
* 225569c8b fix(package): downgrade angular-tree-component to ^7.0.0 to match patternfly
* 433e9d567 fix(webpack): source-map-loader warnings on rxjs compat (#3325)
* ff7eaab27 fix(auth): clean up import of angular-oauth2-oidc
* 5aaadeabe fix(package): downgrade bootstrap to work with patternfly
* 149ef2413 fix(rxjs): upgrade use of observableNever in space service spec
* e96f4b457 fix(profile): remove test of error that doesn't catch error (and doesn't compile)
* 1add86e7e fix(auth): update lib ref for angular-oauth2-oidc
* 8e86721df feat(build): update the test configs in trying to get the unit tests to run
* a49b141b5 feat(package): upgrade Typescript to 3.0.3 to get the ts-loader to work, this might break angular
* d1fec3210 fix(lint): fix lint errors with imports
* 5afd4a93e fix(build:dev): remove awesone-typescript plugin and unsued UgliflyPlugin for dev build
* 02c85241a fix(rxjs): Upgrade Scheduler import, fix Type information
* 9a46d82dd clean(formatting): tslint for import statement
* e8b465479 fix(TS2339): TS error on connect needed cast as ConnetableObservable
* 36466cfca fix(rxjs): change the ref to observable 'empty' so that it could be called
* 536c98476 fixup fix(treelist): point the treelist to patternfly-sandbox-ng so we can keep using it for now
* eca819044 feat(package): add patternfly-sandbox-ng
* 3d80d9b17 feat(lint): fix lint errors and upgrade rxjs syntax
* c5c8f5772 feat(http): remove old fabric8-ui-http.service
* b3d637958 feat(package): update libs
* f8bd623ac feat(http): remove refrence to login-client HttpService
* 5ed3bb4fc feat(build): remove gendir, instead look at using skipTemplateCodeGen
* 5aa429ac3 feat(http): update app.module to use ng6 httpClient
* 57482af47 feat(injectionToken): replace OpaqueToken with InjectionToken
* 3a6860968 feat(build): remove old webpack plugins and replace with 'optimization' config
* 257f8ba1a feat(build): add wepback mode to configs
* a67fbeae1 feat(package): update lock file
* 335dc2a76 feat(package): update webpack to 4.18.0
* 1a96289a3 feat(package): update angular-oauth2-oidc to 4.0.3
* 1bfafa700 feat(package): update lib versions
* 4029406ba fix(package): update package-lock
* 2dcd37002 feat(build): update test build/configs for webpack 4
* 07f937ddc fix(build): alphebetize the tsconfigs
* a0cbe4942 feat(lint): add RxJS lint rules
* 6adceca5d feat(package): set yargs to 12.0.1
* 63226e529 feat(package): remove angular2-tree-component@3.1.0. The new version is angular-tree-component.
* 41ee895af feat(package): remove angular2-oauth2@1.3.10. The new version of this lib is called angular-oauth2-oidc.
* 1b4fa7703 fix(package): @types/source-map@0.5.7 is a stub types definition for source-map and isn't needed
* 7a1592683 feat(package): update @angular to 6.1.6
* 07c34d54c fix(license): add a file ext to the LICENSE
* 81cd83a6a (tag: v1.121.0, matousjobanek/master) feat(recent): introduce recent-utils to be extended by context and spaces service for "recent" logic (#3341)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants