Skip to content
This repository has been archived by the owner on Sep 22, 2020. It is now read-only.

pass slice of key/value pairs instead of strings in bootstrap_test #13

Merged
merged 1 commit into from
Feb 24, 2020

Conversation

wtam2018
Copy link
Collaborator

pass slice of key/value pairs instead of strings in bootstrap_test

Copy link

@gaganhegde gaganhegde left a comment

Choose a reason for hiding this comment

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

< Approved >

@wtam2018 wtam2018 merged commit f4d3ded into bootstrap Feb 24, 2020
@wtam2018 wtam2018 deleted the fix-testing branch February 24, 2020 01:42
bigkevmcd added a commit that referenced this pull request Mar 3, 2020
* Initial commit - basic infrastructure.

* Update to reflect the new location of kubectl/util/templates.

* Start of generating Secrets.

Co-Authored-By: Ishita Sequeira <isequeir@redhat.com>

* Include basic driver script.

This is not intended for final use, but as a way to test out the generated resources.

Co-authored-by: Ishita Sequeira <isequeir@redhat.com>

* Rename the functions to make them package private.

* implement tekton checks  Co-authorized-by Ishita Sequelira <isequeir@redhat.com>

* incoporate reiview feedbacks

* pass array of crd name strings

* Restructure code and add unit test

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Kill commented import

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Add eventlistener and route

- Added functions and unit tests to generate eventlistener
- Added functions and unit tests to generate route
- Appended the generated eventlistener and route to outputs slice.

* Import dependency for pipeline v1alpha1

- Imported v1alpha1 using glide get --strip-vendor

* Replace github repo name in filter string

- Used fmt.Sprintf() to replace the repo name in filter

* Rename baseRepo param to githubRepo param

* fix typos, rename interface, use t.Efrror in table test

* add error wrapping to errors returned by apis

* Delete pipelines

Delete accidentally added binary

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* initial commit for Gagan

Co-authored-by:  gaganeggday <ghegde@redhat.com>

* initial sumibt oc_adm.go, clean up service bindings.go

* rename format parameter name to avoid name collision

* polish up oc_adm.go and add unit test

* Add cluster role "edit" creation

Co-authored-by: Gagan Hegde <ghegde@redhat.com>

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* create functions and get rid of the block comments

* incorporate review feedbacks

* rename formal arguments from xxxName to name

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Drive generation of the YAML for setting up the cluster (#11)

*  added two flags github-token and quay-io-auth-json

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

* made the requested changes mentioned in the PR

* made the requested changes mentioned in the PR and removed the unwanted comments

* created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

* Update test cases for creating opaque secret

* made the required changes mentioned in the PR

*  added two flags github-token and quay-io-auth-json

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

made the requested changes mentioned in the PR

made the requested changes mentioned in the PR and removed the unwanted comments

created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

Update test cases for creating opaque secret

made the required changes mentioned in the PR

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Rework the new code around the base branch.

Explicitly marshal the yaml to os.Stdout for now.

Co-Authored-By: ishitasequeira <isequeir@redhat.com>

* made the required changes mentioned in the PR

* removed the functions which were not required from bootstrap.go

* removed the unwanted test case from bootstrap.go

* Added the test file < odo/pkg/pipelines/bootstrap_test.go>

* Test case corrected and moved to < /pkg/odo/cli/pipelines/bootstrap_test.go>

* made all the changes asked in PR

* pass a signel struct to Bootstrap()

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>

* add image-repo flag to pipeline bootstrap

* pass slice of key/value pairs instead of strings (#13)

* minor flag rename, update description (#12)

* improve tests

* Add initial namespace creation logic. (#8)

This generates the names for the namespaces and provides them when generating the resources.

Co-authored-by: William Tam <wtam@redhat.com>

* Add Buildah to the list of existing tasks (#14)

* Add functions to generate buildah task

- Added functions to generate buildah task object
- Added test cases for the corresponding functions

* Replaced steps object by steps assertive functions

* Fix typo in tasks_tests file

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 39 (#16)

* added pipeline.go

* added pipeline_test.go

* added cd pipeline yaml

* updated bootstrap

* upadated deployment path in bootstrap

* add deployment-path flag, called from bootstrap driver, fixed a bunch of other things

Co-authored-by: William Tam <wtam@redhat.com>

* Add function to validate image registry URL

* Issue 40: Add functions to generate trigger templates and bindings (#15)

* Refactor the bindings functions in triggers package

- Using v1alpha1 package instead of v1alpha2
- Renamed createTypeMeta() to createTriggerBindingMeta()
- Added test case for createBindingParam()
- Using Fatalf() instead of Errorf()

* template

* Barebones of test working.

* templates-test

* created go file to generate Templates

* Add generated trigger templates and bindings to outputs slice

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Merge templates and bindings functions into a single package

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Add namespaces to TriggerBindings TriggerTemplates.

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Issue 53: Add flag to bypass Tekton installation checks. (#19)

* Add flag to bypass Tekton installation checks

- Added a flag --bypass-checks to bypass installation checks
- Added unit test case

* Rename BypassChecks to SkipChecks

Co-authored-by: William Tam <wtam@redhat.com>

*  Changed the service account name from demo-sa to pipeline to run tas… (#18)

*  Changed the service account name from demo-sa to pipeline to run tasks without operator

*  Passed the service account name as an argument, modified test cases

* unpack  slice before appending to outputs slice, fix ns/name ordering (#20)

* Add params to dev CI pipelinerun (#21)

- Add missing parameters in dev CI pipelinerun
- Pass the image repo as parameter
- Fix typo in template name

Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>

* add image-repo flag to pipeline bootstrap

* improve tests

* Add function to validate image registry URL

* Pass image repo name as parameter to trigger templates

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 44 (#22)

* added namespace for the route

*  Added the missing namespace to route yaml

* The proper function syntax and test cases were fixed

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* This seems to be lost with merges

* Call t.Run() so that it prints out the test description when they fail.  Call t.Errorf so that it continue next test case even if it fails.

* Make dockerconfigson options as it is not required if internal registry is used.

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Updated quay-username flag as optional

- Modified bootstrap script to use internal registry

* Update bootstrap command to support internal registry

- quay-username and dockerconfigjson flags are made optional
- Updated TLS for buildah task
- Added rolebinding to access internal registry

 Co-authored-by: William Tam <email.wtam@gmail.com>

* Some cleanup

* * Add optional flag to provide internal regiistry hostname with default to "image-registry.openshift-image-registry.svc:5000"
* Combine validateImageRepos() and checkInternalRegistry()
* Accept internal registry repo to be entered with registry hostname
* Reconize quay.io and docker.io registry and validate to have right number of url components.

* Check for namespace existence in internal registry URL

- Check if the internal registry namespace exists
- If not,create the required namespace

Co-authored-by: William Tam <email.wtam@gmail.com>

* Gitops issue 48 (#25)

* removed the create-github-status-task

*  Completely removed the dependency on Github-status-task

* removed the create-github-status-task and  dependency on it

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* * Fixed typos
* Got rid of quay-username flag.   We don't need it now that we have image repo
* Renamed quayAuthFileName to dockerConfigJSONFileName
* Check for dockerConfigJson option after we parse image repo and know it is not an internal registry
* Fixed comments
* Add check for white spaces in image repo URL

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* * Renamed BootstrapOptions to BootstrapParameters which could contain both optional and required parameters.
* Created imageRepoValidationError()

* fix  typos and comments

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
bigkevmcd added a commit that referenced this pull request May 15, 2020
* Initial commit - basic infrastructure.

* Update to reflect the new location of kubectl/util/templates.

* Start of generating Secrets.

Co-Authored-By: Ishita Sequeira <isequeir@redhat.com>

* Include basic driver script.

This is not intended for final use, but as a way to test out the generated resources.

Co-authored-by: Ishita Sequeira <isequeir@redhat.com>

* Rename the functions to make them package private.

* implement tekton checks  Co-authorized-by Ishita Sequelira <isequeir@redhat.com>

* incoporate reiview feedbacks

* pass array of crd name strings

* Restructure code and add unit test

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Kill commented import

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Add eventlistener and route

- Added functions and unit tests to generate eventlistener
- Added functions and unit tests to generate route
- Appended the generated eventlistener and route to outputs slice.

* Import dependency for pipeline v1alpha1

- Imported v1alpha1 using glide get --strip-vendor

* Replace github repo name in filter string

- Used fmt.Sprintf() to replace the repo name in filter

* Rename baseRepo param to githubRepo param

* fix typos, rename interface, use t.Efrror in table test

* add error wrapping to errors returned by apis

* Delete pipelines

Delete accidentally added binary

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* initial commit for Gagan

Co-authored-by:  gaganeggday <ghegde@redhat.com>

* initial sumibt oc_adm.go, clean up service bindings.go

* rename format parameter name to avoid name collision

* polish up oc_adm.go and add unit test

* Add cluster role "edit" creation

Co-authored-by: Gagan Hegde <ghegde@redhat.com>

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* create functions and get rid of the block comments

* incorporate review feedbacks

* rename formal arguments from xxxName to name

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Drive generation of the YAML for setting up the cluster (#11)

*  added two flags github-token and quay-io-auth-json

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

* made the requested changes mentioned in the PR

* made the requested changes mentioned in the PR and removed the unwanted comments

* created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

* Update test cases for creating opaque secret

* made the required changes mentioned in the PR

*  added two flags github-token and quay-io-auth-json

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

made the requested changes mentioned in the PR

made the requested changes mentioned in the PR and removed the unwanted comments

created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

Update test cases for creating opaque secret

made the required changes mentioned in the PR

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Rework the new code around the base branch.

Explicitly marshal the yaml to os.Stdout for now.

Co-Authored-By: ishitasequeira <isequeir@redhat.com>

* made the required changes mentioned in the PR

* removed the functions which were not required from bootstrap.go

* removed the unwanted test case from bootstrap.go

* Added the test file < odo/pkg/pipelines/bootstrap_test.go>

* Test case corrected and moved to < /pkg/odo/cli/pipelines/bootstrap_test.go>

* made all the changes asked in PR

* pass a signel struct to Bootstrap()

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>

* add image-repo flag to pipeline bootstrap

* pass slice of key/value pairs instead of strings (#13)

* minor flag rename, update description (#12)

* improve tests

* Add initial namespace creation logic. (#8)

This generates the names for the namespaces and provides them when generating the resources.

Co-authored-by: William Tam <wtam@redhat.com>

* Add Buildah to the list of existing tasks (#14)

* Add functions to generate buildah task

- Added functions to generate buildah task object
- Added test cases for the corresponding functions

* Replaced steps object by steps assertive functions

* Fix typo in tasks_tests file

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 39 (#16)

* added pipeline.go

* added pipeline_test.go

* added cd pipeline yaml

* updated bootstrap

* upadated deployment path in bootstrap

* add deployment-path flag, called from bootstrap driver, fixed a bunch of other things

Co-authored-by: William Tam <wtam@redhat.com>

* Add function to validate image registry URL

* Issue 40: Add functions to generate trigger templates and bindings (#15)

* Refactor the bindings functions in triggers package

- Using v1alpha1 package instead of v1alpha2
- Renamed createTypeMeta() to createTriggerBindingMeta()
- Added test case for createBindingParam()
- Using Fatalf() instead of Errorf()

* template

* Barebones of test working.

* templates-test

* created go file to generate Templates

* Add generated trigger templates and bindings to outputs slice

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Merge templates and bindings functions into a single package

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Add namespaces to TriggerBindings TriggerTemplates.

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Issue 53: Add flag to bypass Tekton installation checks. (#19)

* Add flag to bypass Tekton installation checks

- Added a flag --bypass-checks to bypass installation checks
- Added unit test case

* Rename BypassChecks to SkipChecks

Co-authored-by: William Tam <wtam@redhat.com>

*  Changed the service account name from demo-sa to pipeline to run tas… (#18)

*  Changed the service account name from demo-sa to pipeline to run tasks without operator

*  Passed the service account name as an argument, modified test cases

* unpack  slice before appending to outputs slice, fix ns/name ordering (#20)

* Add params to dev CI pipelinerun (#21)

- Add missing parameters in dev CI pipelinerun
- Pass the image repo as parameter
- Fix typo in template name

Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>

* add image-repo flag to pipeline bootstrap

* improve tests

* Add function to validate image registry URL

* Pass image repo name as parameter to trigger templates

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 44 (#22)

* added namespace for the route

*  Added the missing namespace to route yaml

* The proper function syntax and test cases were fixed

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* This seems to be lost with merges

* Call t.Run() so that it prints out the test description when they fail.  Call t.Errorf so that it continue next test case even if it fails.

* Make dockerconfigson options as it is not required if internal registry is used.

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Updated quay-username flag as optional

- Modified bootstrap script to use internal registry

* Update bootstrap command to support internal registry

- quay-username and dockerconfigjson flags are made optional
- Updated TLS for buildah task
- Added rolebinding to access internal registry

 Co-authored-by: William Tam <email.wtam@gmail.com>

* Some cleanup

* * Add optional flag to provide internal regiistry hostname with default to "image-registry.openshift-image-registry.svc:5000"
* Combine validateImageRepos() and checkInternalRegistry()
* Accept internal registry repo to be entered with registry hostname
* Reconize quay.io and docker.io registry and validate to have right number of url components.

* Check for namespace existence in internal registry URL

- Check if the internal registry namespace exists
- If not,create the required namespace

Co-authored-by: William Tam <email.wtam@gmail.com>

* Gitops issue 48 (#25)

* removed the create-github-status-task

*  Completely removed the dependency on Github-status-task

* removed the create-github-status-task and  dependency on it

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* * Fixed typos
* Got rid of quay-username flag.   We don't need it now that we have image repo
* Renamed quayAuthFileName to dockerConfigJSONFileName
* Check for dockerConfigJson option after we parse image repo and know it is not an internal registry
* Fixed comments
* Add check for white spaces in image repo URL

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* * Renamed BootstrapOptions to BootstrapParameters which could contain both optional and required parameters.
* Created imageRepoValidationError()

* fix  typos and comments

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
wtam2018 added a commit that referenced this pull request May 25, 2020
* Initial commit - basic infrastructure.

* Update to reflect the new location of kubectl/util/templates.

* Start of generating Secrets.

Co-Authored-By: Ishita Sequeira <isequeir@redhat.com>

* Include basic driver script.

This is not intended for final use, but as a way to test out the generated resources.

Co-authored-by: Ishita Sequeira <isequeir@redhat.com>

* Rename the functions to make them package private.

* implement tekton checks  Co-authorized-by Ishita Sequelira <isequeir@redhat.com>

* incoporate reiview feedbacks

* pass array of crd name strings

* Restructure code and add unit test

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Kill commented import

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Add eventlistener and route

- Added functions and unit tests to generate eventlistener
- Added functions and unit tests to generate route
- Appended the generated eventlistener and route to outputs slice.

* Import dependency for pipeline v1alpha1

- Imported v1alpha1 using glide get --strip-vendor

* Replace github repo name in filter string

- Used fmt.Sprintf() to replace the repo name in filter

* Rename baseRepo param to githubRepo param

* fix typos, rename interface, use t.Efrror in table test

* add error wrapping to errors returned by apis

* Delete pipelines

Delete accidentally added binary

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* initial commit for Gagan

Co-authored-by:  gaganeggday <ghegde@redhat.com>

* initial sumibt oc_adm.go, clean up service bindings.go

* rename format parameter name to avoid name collision

* polish up oc_adm.go and add unit test

* Add cluster role "edit" creation

Co-authored-by: Gagan Hegde <ghegde@redhat.com>

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* create functions and get rid of the block comments

* incorporate review feedbacks

* rename formal arguments from xxxName to name

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Drive generation of the YAML for setting up the cluster (#11)

*  added two flags github-token and quay-io-auth-json

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

* made the requested changes mentioned in the PR

* made the requested changes mentioned in the PR and removed the unwanted comments

* created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

* Update test cases for creating opaque secret

* made the required changes mentioned in the PR

*  added two flags github-token and quay-io-auth-json

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

made the requested changes mentioned in the PR

made the requested changes mentioned in the PR and removed the unwanted comments

created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

Update test cases for creating opaque secret

made the required changes mentioned in the PR

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Rework the new code around the base branch.

Explicitly marshal the yaml to os.Stdout for now.

Co-Authored-By: ishitasequeira <isequeir@redhat.com>

* made the required changes mentioned in the PR

* removed the functions which were not required from bootstrap.go

* removed the unwanted test case from bootstrap.go

* Added the test file < odo/pkg/pipelines/bootstrap_test.go>

* Test case corrected and moved to < /pkg/odo/cli/pipelines/bootstrap_test.go>

* made all the changes asked in PR

* pass a signel struct to Bootstrap()

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>

* add image-repo flag to pipeline bootstrap

* pass slice of key/value pairs instead of strings (#13)

* minor flag rename, update description (#12)

* improve tests

* Add initial namespace creation logic. (#8)

This generates the names for the namespaces and provides them when generating the resources.

Co-authored-by: William Tam <wtam@redhat.com>

* Add Buildah to the list of existing tasks (#14)

* Add functions to generate buildah task

- Added functions to generate buildah task object
- Added test cases for the corresponding functions

* Replaced steps object by steps assertive functions

* Fix typo in tasks_tests file

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 39 (#16)

* added pipeline.go

* added pipeline_test.go

* added cd pipeline yaml

* updated bootstrap

* upadated deployment path in bootstrap

* add deployment-path flag, called from bootstrap driver, fixed a bunch of other things

Co-authored-by: William Tam <wtam@redhat.com>

* Add function to validate image registry URL

* Issue 40: Add functions to generate trigger templates and bindings (#15)

* Refactor the bindings functions in triggers package

- Using v1alpha1 package instead of v1alpha2
- Renamed createTypeMeta() to createTriggerBindingMeta()
- Added test case for createBindingParam()
- Using Fatalf() instead of Errorf()

* template

* Barebones of test working.

* templates-test

* created go file to generate Templates

* Add generated trigger templates and bindings to outputs slice

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Merge templates and bindings functions into a single package

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Add namespaces to TriggerBindings TriggerTemplates.

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Issue 53: Add flag to bypass Tekton installation checks. (#19)

* Add flag to bypass Tekton installation checks

- Added a flag --bypass-checks to bypass installation checks
- Added unit test case

* Rename BypassChecks to SkipChecks

Co-authored-by: William Tam <wtam@redhat.com>

*  Changed the service account name from demo-sa to pipeline to run tas… (#18)

*  Changed the service account name from demo-sa to pipeline to run tasks without operator

*  Passed the service account name as an argument, modified test cases

* unpack  slice before appending to outputs slice, fix ns/name ordering (#20)

* Add params to dev CI pipelinerun (#21)

- Add missing parameters in dev CI pipelinerun
- Pass the image repo as parameter
- Fix typo in template name

Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>

* add image-repo flag to pipeline bootstrap

* improve tests

* Add function to validate image registry URL

* Pass image repo name as parameter to trigger templates

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 44 (#22)

* added namespace for the route

*  Added the missing namespace to route yaml

* The proper function syntax and test cases were fixed

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* This seems to be lost with merges

* Call t.Run() so that it prints out the test description when they fail.  Call t.Errorf so that it continue next test case even if it fails.

* Make dockerconfigson options as it is not required if internal registry is used.

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Updated quay-username flag as optional

- Modified bootstrap script to use internal registry

* Update bootstrap command to support internal registry

- quay-username and dockerconfigjson flags are made optional
- Updated TLS for buildah task
- Added rolebinding to access internal registry

 Co-authored-by: William Tam <email.wtam@gmail.com>

* Some cleanup

* * Add optional flag to provide internal regiistry hostname with default to "image-registry.openshift-image-registry.svc:5000"
* Combine validateImageRepos() and checkInternalRegistry()
* Accept internal registry repo to be entered with registry hostname
* Reconize quay.io and docker.io registry and validate to have right number of url components.

* Check for namespace existence in internal registry URL

- Check if the internal registry namespace exists
- If not,create the required namespace

Co-authored-by: William Tam <email.wtam@gmail.com>

* Gitops issue 48 (#25)

* removed the create-github-status-task

*  Completely removed the dependency on Github-status-task

* removed the create-github-status-task and  dependency on it

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* * Fixed typos
* Got rid of quay-username flag.   We don't need it now that we have image repo
* Renamed quayAuthFileName to dockerConfigJSONFileName
* Check for dockerConfigJson option after we parse image repo and know it is not an internal registry
* Fixed comments
* Add check for white spaces in image repo URL

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* * Renamed BootstrapOptions to BootstrapParameters which could contain both optional and required parameters.
* Created imageRepoValidationError()

* fix  typos and comments

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
wtam2018 added a commit that referenced this pull request May 26, 2020
* Initial commit - basic infrastructure.

* Update to reflect the new location of kubectl/util/templates.

* Start of generating Secrets.

Co-Authored-By: Ishita Sequeira <isequeir@redhat.com>

* Include basic driver script.

This is not intended for final use, but as a way to test out the generated resources.

Co-authored-by: Ishita Sequeira <isequeir@redhat.com>

* Rename the functions to make them package private.

* implement tekton checks  Co-authorized-by Ishita Sequelira <isequeir@redhat.com>

* incoporate reiview feedbacks

* pass array of crd name strings

* Restructure code and add unit test

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Kill commented import

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Add eventlistener and route

- Added functions and unit tests to generate eventlistener
- Added functions and unit tests to generate route
- Appended the generated eventlistener and route to outputs slice.

* Import dependency for pipeline v1alpha1

- Imported v1alpha1 using glide get --strip-vendor

* Replace github repo name in filter string

- Used fmt.Sprintf() to replace the repo name in filter

* Rename baseRepo param to githubRepo param

* fix typos, rename interface, use t.Efrror in table test

* add error wrapping to errors returned by apis

* Delete pipelines

Delete accidentally added binary

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* initial commit for Gagan

Co-authored-by:  gaganeggday <ghegde@redhat.com>

* initial sumibt oc_adm.go, clean up service bindings.go

* rename format parameter name to avoid name collision

* polish up oc_adm.go and add unit test

* Add cluster role "edit" creation

Co-authored-by: Gagan Hegde <ghegde@redhat.com>

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* create functions and get rid of the block comments

* incorporate review feedbacks

* rename formal arguments from xxxName to name

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Drive generation of the YAML for setting up the cluster (#11)

*  added two flags github-token and quay-io-auth-json

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

* made the requested changes mentioned in the PR

* made the requested changes mentioned in the PR and removed the unwanted comments

* created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

* Update test cases for creating opaque secret

* made the required changes mentioned in the PR

*  added two flags github-token and quay-io-auth-json

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

made the requested changes mentioned in the PR

made the requested changes mentioned in the PR and removed the unwanted comments

created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

Update test cases for creating opaque secret

made the required changes mentioned in the PR

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Rework the new code around the base branch.

Explicitly marshal the yaml to os.Stdout for now.

Co-Authored-By: ishitasequeira <isequeir@redhat.com>

* made the required changes mentioned in the PR

* removed the functions which were not required from bootstrap.go

* removed the unwanted test case from bootstrap.go

* Added the test file < odo/pkg/pipelines/bootstrap_test.go>

* Test case corrected and moved to < /pkg/odo/cli/pipelines/bootstrap_test.go>

* made all the changes asked in PR

* pass a signel struct to Bootstrap()

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>

* add image-repo flag to pipeline bootstrap

* pass slice of key/value pairs instead of strings (#13)

* minor flag rename, update description (#12)

* improve tests

* Add initial namespace creation logic. (#8)

This generates the names for the namespaces and provides them when generating the resources.

Co-authored-by: William Tam <wtam@redhat.com>

* Add Buildah to the list of existing tasks (#14)

* Add functions to generate buildah task

- Added functions to generate buildah task object
- Added test cases for the corresponding functions

* Replaced steps object by steps assertive functions

* Fix typo in tasks_tests file

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 39 (#16)

* added pipeline.go

* added pipeline_test.go

* added cd pipeline yaml

* updated bootstrap

* upadated deployment path in bootstrap

* add deployment-path flag, called from bootstrap driver, fixed a bunch of other things

Co-authored-by: William Tam <wtam@redhat.com>

* Add function to validate image registry URL

* Issue 40: Add functions to generate trigger templates and bindings (#15)

* Refactor the bindings functions in triggers package

- Using v1alpha1 package instead of v1alpha2
- Renamed createTypeMeta() to createTriggerBindingMeta()
- Added test case for createBindingParam()
- Using Fatalf() instead of Errorf()

* template

* Barebones of test working.

* templates-test

* created go file to generate Templates

* Add generated trigger templates and bindings to outputs slice

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Merge templates and bindings functions into a single package

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Add namespaces to TriggerBindings TriggerTemplates.

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Issue 53: Add flag to bypass Tekton installation checks. (#19)

* Add flag to bypass Tekton installation checks

- Added a flag --bypass-checks to bypass installation checks
- Added unit test case

* Rename BypassChecks to SkipChecks

Co-authored-by: William Tam <wtam@redhat.com>

*  Changed the service account name from demo-sa to pipeline to run tas… (#18)

*  Changed the service account name from demo-sa to pipeline to run tasks without operator

*  Passed the service account name as an argument, modified test cases

* unpack  slice before appending to outputs slice, fix ns/name ordering (#20)

* Add params to dev CI pipelinerun (#21)

- Add missing parameters in dev CI pipelinerun
- Pass the image repo as parameter
- Fix typo in template name

Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>

* add image-repo flag to pipeline bootstrap

* improve tests

* Add function to validate image registry URL

* Pass image repo name as parameter to trigger templates

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 44 (#22)

* added namespace for the route

*  Added the missing namespace to route yaml

* The proper function syntax and test cases were fixed

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* This seems to be lost with merges

* Call t.Run() so that it prints out the test description when they fail.  Call t.Errorf so that it continue next test case even if it fails.

* Make dockerconfigson options as it is not required if internal registry is used.

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Updated quay-username flag as optional

- Modified bootstrap script to use internal registry

* Update bootstrap command to support internal registry

- quay-username and dockerconfigjson flags are made optional
- Updated TLS for buildah task
- Added rolebinding to access internal registry

 Co-authored-by: William Tam <email.wtam@gmail.com>

* Some cleanup

* * Add optional flag to provide internal regiistry hostname with default to "image-registry.openshift-image-registry.svc:5000"
* Combine validateImageRepos() and checkInternalRegistry()
* Accept internal registry repo to be entered with registry hostname
* Reconize quay.io and docker.io registry and validate to have right number of url components.

* Check for namespace existence in internal registry URL

- Check if the internal registry namespace exists
- If not,create the required namespace

Co-authored-by: William Tam <email.wtam@gmail.com>

* Gitops issue 48 (#25)

* removed the create-github-status-task

*  Completely removed the dependency on Github-status-task

* removed the create-github-status-task and  dependency on it

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* * Fixed typos
* Got rid of quay-username flag.   We don't need it now that we have image repo
* Renamed quayAuthFileName to dockerConfigJSONFileName
* Check for dockerConfigJson option after we parse image repo and know it is not an internal registry
* Fixed comments
* Add check for white spaces in image repo URL

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* * Renamed BootstrapOptions to BootstrapParameters which could contain both optional and required parameters.
* Created imageRepoValidationError()

* fix  typos and comments

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
wtam2018 added a commit that referenced this pull request May 27, 2020
* Initial commit - basic infrastructure.

* Update to reflect the new location of kubectl/util/templates.

* Start of generating Secrets.

Co-Authored-By: Ishita Sequeira <isequeir@redhat.com>

* Include basic driver script.

This is not intended for final use, but as a way to test out the generated resources.

Co-authored-by: Ishita Sequeira <isequeir@redhat.com>

* Rename the functions to make them package private.

* implement tekton checks  Co-authorized-by Ishita Sequelira <isequeir@redhat.com>

* incoporate reiview feedbacks

* pass array of crd name strings

* Restructure code and add unit test

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Kill commented import

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Add eventlistener and route

- Added functions and unit tests to generate eventlistener
- Added functions and unit tests to generate route
- Appended the generated eventlistener and route to outputs slice.

* Import dependency for pipeline v1alpha1

- Imported v1alpha1 using glide get --strip-vendor

* Replace github repo name in filter string

- Used fmt.Sprintf() to replace the repo name in filter

* Rename baseRepo param to githubRepo param

* fix typos, rename interface, use t.Efrror in table test

* add error wrapping to errors returned by apis

* Delete pipelines

Delete accidentally added binary

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* initial commit for Gagan

Co-authored-by:  gaganeggday <ghegde@redhat.com>

* initial sumibt oc_adm.go, clean up service bindings.go

* rename format parameter name to avoid name collision

* polish up oc_adm.go and add unit test

* Add cluster role "edit" creation

Co-authored-by: Gagan Hegde <ghegde@redhat.com>

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* create functions and get rid of the block comments

* incorporate review feedbacks

* rename formal arguments from xxxName to name

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Drive generation of the YAML for setting up the cluster (#11)

*  added two flags github-token and quay-io-auth-json

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

* made the requested changes mentioned in the PR

* made the requested changes mentioned in the PR and removed the unwanted comments

* created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

* Update test cases for creating opaque secret

* made the required changes mentioned in the PR

*  added two flags github-token and quay-io-auth-json

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

made the requested changes mentioned in the PR

made the requested changes mentioned in the PR and removed the unwanted comments

created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

Update test cases for creating opaque secret

made the required changes mentioned in the PR

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Rework the new code around the base branch.

Explicitly marshal the yaml to os.Stdout for now.

Co-Authored-By: ishitasequeira <isequeir@redhat.com>

* made the required changes mentioned in the PR

* removed the functions which were not required from bootstrap.go

* removed the unwanted test case from bootstrap.go

* Added the test file < odo/pkg/pipelines/bootstrap_test.go>

* Test case corrected and moved to < /pkg/odo/cli/pipelines/bootstrap_test.go>

* made all the changes asked in PR

* pass a signel struct to Bootstrap()

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>

* add image-repo flag to pipeline bootstrap

* pass slice of key/value pairs instead of strings (#13)

* minor flag rename, update description (#12)

* improve tests

* Add initial namespace creation logic. (#8)

This generates the names for the namespaces and provides them when generating the resources.

Co-authored-by: William Tam <wtam@redhat.com>

* Add Buildah to the list of existing tasks (#14)

* Add functions to generate buildah task

- Added functions to generate buildah task object
- Added test cases for the corresponding functions

* Replaced steps object by steps assertive functions

* Fix typo in tasks_tests file

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 39 (#16)

* added pipeline.go

* added pipeline_test.go

* added cd pipeline yaml

* updated bootstrap

* upadated deployment path in bootstrap

* add deployment-path flag, called from bootstrap driver, fixed a bunch of other things

Co-authored-by: William Tam <wtam@redhat.com>

* Add function to validate image registry URL

* Issue 40: Add functions to generate trigger templates and bindings (#15)

* Refactor the bindings functions in triggers package

- Using v1alpha1 package instead of v1alpha2
- Renamed createTypeMeta() to createTriggerBindingMeta()
- Added test case for createBindingParam()
- Using Fatalf() instead of Errorf()

* template

* Barebones of test working.

* templates-test

* created go file to generate Templates

* Add generated trigger templates and bindings to outputs slice

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Merge templates and bindings functions into a single package

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Add namespaces to TriggerBindings TriggerTemplates.

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Issue 53: Add flag to bypass Tekton installation checks. (#19)

* Add flag to bypass Tekton installation checks

- Added a flag --bypass-checks to bypass installation checks
- Added unit test case

* Rename BypassChecks to SkipChecks

Co-authored-by: William Tam <wtam@redhat.com>

*  Changed the service account name from demo-sa to pipeline to run tas… (#18)

*  Changed the service account name from demo-sa to pipeline to run tasks without operator

*  Passed the service account name as an argument, modified test cases

* unpack  slice before appending to outputs slice, fix ns/name ordering (#20)

* Add params to dev CI pipelinerun (#21)

- Add missing parameters in dev CI pipelinerun
- Pass the image repo as parameter
- Fix typo in template name

Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>

* add image-repo flag to pipeline bootstrap

* improve tests

* Add function to validate image registry URL

* Pass image repo name as parameter to trigger templates

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 44 (#22)

* added namespace for the route

*  Added the missing namespace to route yaml

* The proper function syntax and test cases were fixed

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* This seems to be lost with merges

* Call t.Run() so that it prints out the test description when they fail.  Call t.Errorf so that it continue next test case even if it fails.

* Make dockerconfigson options as it is not required if internal registry is used.

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Updated quay-username flag as optional

- Modified bootstrap script to use internal registry

* Update bootstrap command to support internal registry

- quay-username and dockerconfigjson flags are made optional
- Updated TLS for buildah task
- Added rolebinding to access internal registry

 Co-authored-by: William Tam <email.wtam@gmail.com>

* Some cleanup

* * Add optional flag to provide internal regiistry hostname with default to "image-registry.openshift-image-registry.svc:5000"
* Combine validateImageRepos() and checkInternalRegistry()
* Accept internal registry repo to be entered with registry hostname
* Reconize quay.io and docker.io registry and validate to have right number of url components.

* Check for namespace existence in internal registry URL

- Check if the internal registry namespace exists
- If not,create the required namespace

Co-authored-by: William Tam <email.wtam@gmail.com>

* Gitops issue 48 (#25)

* removed the create-github-status-task

*  Completely removed the dependency on Github-status-task

* removed the create-github-status-task and  dependency on it

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* * Fixed typos
* Got rid of quay-username flag.   We don't need it now that we have image repo
* Renamed quayAuthFileName to dockerConfigJSONFileName
* Check for dockerConfigJson option after we parse image repo and know it is not an internal registry
* Fixed comments
* Add check for white spaces in image repo URL

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* * Renamed BootstrapOptions to BootstrapParameters which could contain both optional and required parameters.
* Created imageRepoValidationError()

* fix  typos and comments

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
wtam2018 added a commit that referenced this pull request Jun 17, 2020
* Initial commit - basic infrastructure.

* Update to reflect the new location of kubectl/util/templates.

* Start of generating Secrets.

Co-Authored-By: Ishita Sequeira <isequeir@redhat.com>

* Include basic driver script.

This is not intended for final use, but as a way to test out the generated resources.

Co-authored-by: Ishita Sequeira <isequeir@redhat.com>

* Rename the functions to make them package private.

* implement tekton checks  Co-authorized-by Ishita Sequelira <isequeir@redhat.com>

* incoporate reiview feedbacks

* pass array of crd name strings

* Restructure code and add unit test

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Kill commented import

Co-authored-by: Ishita Sequelira  <isequeir@redhat.com>

* Add eventlistener and route

- Added functions and unit tests to generate eventlistener
- Added functions and unit tests to generate route
- Appended the generated eventlistener and route to outputs slice.

* Import dependency for pipeline v1alpha1

- Imported v1alpha1 using glide get --strip-vendor

* Replace github repo name in filter string

- Used fmt.Sprintf() to replace the repo name in filter

* Rename baseRepo param to githubRepo param

* fix typos, rename interface, use t.Efrror in table test

* add error wrapping to errors returned by apis

* Delete pipelines

Delete accidentally added binary

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* initial commit for Gagan

Co-authored-by:  gaganeggday <ghegde@redhat.com>

* initial sumibt oc_adm.go, clean up service bindings.go

* rename format parameter name to avoid name collision

* polish up oc_adm.go and add unit test

* Add cluster role "edit" creation

Co-authored-by: Gagan Hegde <ghegde@redhat.com>

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* create functions and get rid of the block comments

* incorporate review feedbacks

* rename formal arguments from xxxName to name

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Drive generation of the YAML for setting up the cluster (#11)

*  added two flags github-token and quay-io-auth-json

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

* made the requested changes mentioned in the PR

* made the requested changes mentioned in the PR and removed the unwanted comments

* created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

* Update test cases for creating opaque secret

* made the required changes mentioned in the PR

*  added two flags github-token and quay-io-auth-json

* Add functions to generate Tekton task objects

- Added functions and test cases to create
1) deploy-from-source-task
2) deploy-using-kubectl-task
3) github-status-task

Co-Authored-By: Gagan Hegde <ghegde@redhat.com>

* made changes in the flag description quayIOAuthFileName

* added logic to get the github token filename and auth.json file name

made the requested changes mentioned in the PR

made the requested changes mentioned in the PR and removed the unwanted comments

created 4 required-flags quay-username, github-token, dockerconfigjson,base-repository

Update test cases for creating opaque secret

made the required changes mentioned in the PR

* Replace objects in task_tests with suitable assertive functions

- Removed stuttering function names in tasks,routes and eventlisteners package.
- Objects in task_tests are replaced by functions to improve readability.

* Add secret name as parameter to Generate function

* pass ServiceAccount as object to createRoleBinding

* pass ServiceAccount as object to createRoleBinding

* Rework the new code around the base branch.

Explicitly marshal the yaml to os.Stdout for now.

Co-Authored-By: ishitasequeira <isequeir@redhat.com>

* made the required changes mentioned in the PR

* removed the functions which were not required from bootstrap.go

* removed the unwanted test case from bootstrap.go

* Added the test file < odo/pkg/pipelines/bootstrap_test.go>

* Test case corrected and moved to < /pkg/odo/cli/pipelines/bootstrap_test.go>

* made all the changes asked in PR

* pass a signel struct to Bootstrap()

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>

* add image-repo flag to pipeline bootstrap

* pass slice of key/value pairs instead of strings (#13)

* minor flag rename, update description (#12)

* improve tests

* Add initial namespace creation logic. (#8)

This generates the names for the namespaces and provides them when generating the resources.

Co-authored-by: William Tam <wtam@redhat.com>

* Add Buildah to the list of existing tasks (#14)

* Add functions to generate buildah task

- Added functions to generate buildah task object
- Added test cases for the corresponding functions

* Replaced steps object by steps assertive functions

* Fix typo in tasks_tests file

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 39 (#16)

* added pipeline.go

* added pipeline_test.go

* added cd pipeline yaml

* updated bootstrap

* upadated deployment path in bootstrap

* add deployment-path flag, called from bootstrap driver, fixed a bunch of other things

Co-authored-by: William Tam <wtam@redhat.com>

* Add function to validate image registry URL

* Issue 40: Add functions to generate trigger templates and bindings (#15)

* Refactor the bindings functions in triggers package

- Using v1alpha1 package instead of v1alpha2
- Renamed createTypeMeta() to createTriggerBindingMeta()
- Added test case for createBindingParam()
- Using Fatalf() instead of Errorf()

* template

* Barebones of test working.

* templates-test

* created go file to generate Templates

* Add generated trigger templates and bindings to outputs slice

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Merge templates and bindings functions into a single package

Co-Authored-By: Dhanashri Palodkar <dpalodka@redhat.com>

* Add namespaces to TriggerBindings TriggerTemplates.

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Issue 53: Add flag to bypass Tekton installation checks. (#19)

* Add flag to bypass Tekton installation checks

- Added a flag --bypass-checks to bypass installation checks
- Added unit test case

* Rename BypassChecks to SkipChecks

Co-authored-by: William Tam <wtam@redhat.com>

*  Changed the service account name from demo-sa to pipeline to run tas… (#18)

*  Changed the service account name from demo-sa to pipeline to run tasks without operator

*  Passed the service account name as an argument, modified test cases

* unpack  slice before appending to outputs slice, fix ns/name ordering (#20)

* Add params to dev CI pipelinerun (#21)

- Add missing parameters in dev CI pipelinerun
- Pass the image repo as parameter
- Fix typo in template name

Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>

* add image-repo flag to pipeline bootstrap

* improve tests

* Add function to validate image registry URL

* Pass image repo name as parameter to trigger templates

Co-authored-by: William Tam <wtam@redhat.com>

* Gitops issue 44 (#22)

* added namespace for the route

*  Added the missing namespace to route yaml

* The proper function syntax and test cases were fixed

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* This seems to be lost with merges

* Call t.Run() so that it prints out the test description when they fail.  Call t.Errorf so that it continue next test case even if it fails.

* Make dockerconfigson options as it is not required if internal registry is used.

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* Updated quay-username flag as optional

- Modified bootstrap script to use internal registry

* Update bootstrap command to support internal registry

- quay-username and dockerconfigjson flags are made optional
- Updated TLS for buildah task
- Added rolebinding to access internal registry

 Co-authored-by: William Tam <email.wtam@gmail.com>

* Some cleanup

* * Add optional flag to provide internal regiistry hostname with default to "image-registry.openshift-image-registry.svc:5000"
* Combine validateImageRepos() and checkInternalRegistry()
* Accept internal registry repo to be entered with registry hostname
* Reconize quay.io and docker.io registry and validate to have right number of url components.

* Check for namespace existence in internal registry URL

- Check if the internal registry namespace exists
- If not,create the required namespace

Co-authored-by: William Tam <email.wtam@gmail.com>

* Gitops issue 48 (#25)

* removed the create-github-status-task

*  Completely removed the dependency on Github-status-task

* removed the create-github-status-task and  dependency on it

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* * Fixed typos
* Got rid of quay-username flag.   We don't need it now that we have image repo
* Renamed quayAuthFileName to dockerConfigJSONFileName
* Check for dockerConfigJson option after we parse image repo and know it is not an internal registry
* Fixed comments
* Add check for white spaces in image repo URL

* Issue 46: Add role bindings with edit access (#23)

* Add rolebindings for dev and stage namespace

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

* Fix dockerconfigjson secret namespace and name swap issue. Move sources to func in main driver. (#17)

Co-authored-by: ishitasequeira <isequeir@redhat.com>

* made changes mentioned in the PR
renamed devRoleBindingName and stageRoleBindingName and created rolebindings

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: William Tam <wtam@redhat.com>

* * Renamed BootstrapOptions to BootstrapParameters which could contain both optional and required parameters.
* Created imageRepoValidationError()

* fix  typos and comments

Co-authored-by: Kevin McDermott <bigkevmcd@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Co-authored-by: gaganeggday <48808456+gaganeggday@users.noreply.github.com>
Co-authored-by: Dhanashri Palodkar <dpalodkar14@gmail.com>
wtam2018 pushed a commit that referenced this pull request Jul 9, 2020
Signed-off-by: Steven Groeger <groeges@uk.ibm.com>
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.

2 participants