Commit Graph

178 Commits

Author SHA1 Message Date
Anand Kumar Singh
4ba943986d add e2e tests (#5778)
* add e2e tests, add G107 in gosec as exception

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* add error handling

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* incorporate reviews

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* error handling

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* error handling

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* disable G107 for tests only

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* remove commented code

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* remove tests redundant checks

Signed-off-by: anandrkskd <anandrkskd@gmail.com>
2022-06-09 06:24:21 -04:00
Armel Soro
06550eb233 Add additional checks to golangci-lint (#5567) (#5687)
* Document golangci-lint configuration options

* Do not limit the number of issues reported per linter

* Add check preventing the use of the deprecated 'github.com/pkg/errors' package

* Upgrade golangci-lint to 1.37.0, so we can use 'revive' Linter

- revive is a drop-in replacement for the deprecated golint Linter
- revive will allow to check for error strings

Note: We are purposely not using the latest golangci-lint (1.45.0)
but the minimum version from which revive is available.
This is because the latest 1.45.0 reports additional linting issues
(from govet and staticcheck for example). And fixing those side errors
is outside of the scope of this issue.
Also some of those issues are already fixed in #5497 (update to Go 1.17).

* Configure revive to check for error strings

More rules can be added later on if needed

* Fix issues reported by revive's error-strings rule

Some rules are purposely ignored when the
error messages represent top-level errors that are
displayed to be displayed as is to end users

* Fix more error-strings issues

For some reason, those were not reported by revive's error-strings rule,
but only by GoLand inspection tool.

* Fix missing `revive:disable:error-strings` comment directive

Also replace "fmt.Errorf" by "errors.New" when the error message is static
2022-04-25 07:32:20 -04:00
Charlie Drage
9c491b16fe Updates odo init output, fixes colorized output for tests. (#5613)
* Update vendoring for coloring to add NO_COLOR

* Updates odo init output / adds logo

<!--
Thank you for opening a PR! Here are some things you need to know before submitting:

1. Please read our developer guideline: https://github.com/redhat-developer/odo/wiki/Dev:-odo-Dev-Guidelines
2. Label this PR accordingly with the '/kind' line
3. Ensure you have written and ran the appropriate tests: https://github.com/redhat-developer/odo/wiki/Dev:-Writing-and-running-tests
4. Read how we approve and LGTM each PR: https://github.com/redhat-developer/odo/wiki/Pull-Requests:-Review-guideline

Documentation:

If you are pushing a change to documentation, please read: https://github.com/redhat-developer/odo/wiki/Documentation:-Contributing
-->

**What type of PR is this:**

<!--
Add one of the following kinds:
/kind bug
/kind cleanup
/kind tests
/kind documentation

Feel free to use other [labels](https://github.com/redhat-developer/odo/labels) as needed. However one of the above labels must be present or the PR will not be reviewed. This instruction is for reviewers as well.
-->

/kind feature

**What does this PR do / why we need it:**

We have the logo appearing in `odo dev` and `odo deploy`

Those 3 commands are the most used with `odo`, and the ones that are
most used. All three should have similar and consistent output that
contains:
  * What the component is doing (first line)
  * What's detected (in odo init, it's the files, in odo deploy and dev
    it's the component name)
  * odo version that is being used / outputted.

```sh
$ odo init
  __
 /  \__     Initializing a new component
 \__/  \    Files: No source code detected, a starter project will be created in the current directory
 /  \__/    odo version: v2.5.0
 \__/

Interactive mode enabled, please answer the following questions:
? Select language: javascript
? Select project type: Next.js
 ✓  Downloading devfile "nodejs-nextjs" from registry "DefaultDevfileRegistry" [450ms]
? Which starter project do you want to use? nodejs-nextjs-starter
? Enter component name: my-nodejs-nextjs-app
 ✓  Downloading starter project "nodejs-nextjs-starter" [516ms]

Your new component 'my-nodejs-nextjs-app' is ready in the current directory.
To start editing your component, use 'odo dev' and open this folder in your favorite IDE.
Changes will be directly reflected on the cluster.
```

**Which issue(s) this PR fixes:**
<!--
Specifying the issue will automatically close it when this PR is merged
-->

N/A

**PR acceptance criteria:**

- [X] Unit test

- [X] Integration test

- [X] Documentation

**How to test changes / Special notes to the reviewer:**

N/A

Signed-off-by: Charlie Drage <charlie@charliedrage.com>

* Update based on reviews

Signed-off-by: Charlie Drage <charlie@charliedrage.com>

* Update based on review

Signed-off-by: Charlie Drage <charlie@charliedrage.com>
2022-04-12 09:41:45 -04:00
Armel Soro
2132cb516f [#5561] Remove odo url (#5571)
* Remove `odo url` from CLI layer

* Adapt tests

* Adapt test from deleted `cmd_devfile_delete_test.go`

This test still makes sense, as it tests the removal
of URL-related resources, like Services and Ingresses.

* Remove call to `odo project set ...` in test, as suggested in review

This command will get removed in the near future.

* Remove places where URL manipulation could modify  Devfiles

Also remove dead code

* Remove unused `updateURL` field from EnvInfo struct

* Adapt test by mimicking some behavior that `odo url create` used to perform

`odo url` used to modify the `env.yaml` file,
and `odo dev` currently creates Kubernetes/OCP resources related to URLs.

We may remove this test later on if `odo dev`
no longer needs to create such Ingresses and Routes.

* Remove all places where URLs, Ingresses and Routes are manipulated

* Port test in cmd_dev_test instead and make sure no Ingress/Route is created

* Remove no-longer `test-cmd-devfile-url` target from Makefile

The corresponding test file has been deleted.

* Remove `create url` command reference from V3 docs, as suggested in review

* Use existing `devfile-with-multiple-endpoints.yaml` Devfile  in test, as suggested in review
2022-03-28 16:39:53 +02:00
Parthvi Vala
80d7cfde30 Create cleanup (#5589)
* Cleanup create code

* Add missing integration tests from odo create to odo init

* Add CreateLocalEnv to create .odo/env/env.yaml file for commands that require it but cannot create it

* Remove 'odo create'  usages from integration tests

* Remove create reference from the Makefile

* REmove create doc from v3

Signed-off-by: Parthvi Vala <pvala@redhat.com>

* Remove test files

* Fix CI failure

Signed-off-by: Parthvi Vala <pvala@redhat.com>
2022-03-25 13:37:52 +01:00
Tomas Kral
614976a0bf remove odo catalog command (#5577)
* remove odo catalog command

- move devfile registry relevant code to pkg/registry

* remove odo catalog page form docs

* remove a few forgotten uses of catalog from clientset.go

* fix typos in docs
2022-03-23 12:15:41 +01:00
Parthvi Vala
312ae310e2 Remove v2delete reference from Makefile (#5580) 2022-03-22 17:30:29 +01:00
Rodolfo Napoles
83f26da94d Reorganized test file directory structure (#5537)
* Rebased was required

* Replicated changes to  openshiftci related scripts to avoid test failure
2022-03-16 01:42:11 -04:00
Armel Soro
dbd88143d3 Make sure Makefile targets for both integration and E2E tests depend on the 'install' target (#5538)
This is because such targets run tests that rely on the `odo` binary
to execute subcommands in separate processes.
While iterating on the code, we could often end up with situations where
the `odo` binary is no longer up-to-date, should we forget to `make install` before.
2022-03-11 04:54:09 -05:00
Anand Kumar Singh
3eb92b6a47 POC for odo interactive testing (#5466)
* POC for odo interactive testing

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* add interactive tests to make target test-integration

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* [WIP] use func to pass test instructions

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* cleanup comments/test

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* cleanup minor changes

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* fix unit test failure

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* skip for windows

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* skip for windows by not compiling, cleanup

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* cleanup, and add the make target to test files

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* incorporate review, adding comments, cleanup

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* fix failing make validate

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* update test dependency, and possible fix for windows

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* Revert "update test dependency, and possible fix for windows"

This reverts commit 55580b7dc5.

* Final cleanup

Signed-off-by: anandrkskd <anandrkskd@gmail.com>
2022-03-02 13:50:26 -05:00
Philippe Martin
850c7cd723 Remove commands that wont be implemented for v3-alpha1 (#5433)
* Remove odo staorage commands

* Remove "odo service" + "odo catalog * service" commands

* Remove odo link/unlink commands

* Remove related integration tests

* Remove application concept

* fix rebase

* fix test

* Remove config command

* Remove env command

* Remove application package

* Remove config package

* Move odogenerator and unions packages into kclient

* Move notify package to cli/version

* Fix script mockgen

* Remove odo debug command oand debug package

* Remove odo component describe/exec/log/status/test

* Remove operator-hub tests from IBM tests

* Remove operator hub tests from CI

* Fix e2e tests
2022-02-06 23:42:15 -05:00
Philippe Martin
07ef685df7 Use an image with pre-installed oc/kubectl/ibmcloud for IBM Pipelines (#5269)
* Use an image with pre-installed oc/kubectl/ibmcloud for IBM Pipelines

* Increase time for unit tests (very long on single CPU VM)

* Dockerfile for build image
2021-12-03 17:02:46 +01:00
Tomas Kral
5f79c542a8 openshift/odo -> redhat-developer/odo (#5268)
* openshift/odo -> redhat-developer/odo

* update more links to redhat-developer
2021-12-01 16:38:34 +01:00
Mrinal Das
74fc779a4a Removes the s2i flag from the create file (#5023) 2021-09-21 09:18:39 -04:00
Rodolfo Napoles
b9765a4bee Modifies and adds scripts to run K8S tests on IBM Cloud cluster (#5022)
* Scripts for PSI minishift tests

* added line at end of script

* added line at end of script

* emoved info as requested

* Updates as per review feedback

* deleting unwanted script as it was replaced with other files

* Scripts for PSI minishift tests

* Applied workaround to use env variable to select minikube or minishift

* Set CLUSTER env variable to appply workaround for firewall not taking parameters

* added curl for missing script and added misiing /, removed unnecessary cd

* Separating minishift from merged minikube-minishift scripts due to firewall not taking parameters for script execution

* Changes to run tests in IBM Cloud, changed TEST_EXEX_NODES=24

* remove non required changes (old stuff) and remove non required scripts (old stuff)

* Modified and added scripts to run tests in IBM Cloud cluster

* Additional changes for to run K8S test in IBM Cloud

* Removed unnecessary line

* changes to run tests on K8S cluster in IBM Cloud

* ncorportaed changes based on feedback for IBM Cloud tests

* Chnages based in feedback for IBM Cloud

* updated string for home dir

* removing test-integration-devfile as it ends with failures

* Fixed if statement

* changes to Makefile for number of nodes

* added requested comment to Makefile about nodes if running in IBM Cloud
2021-09-08 14:39:21 +02:00
Mohammed Ahmed
0b8b712a99 Dropping support for service catalog based services (#4906)
* Removing cli layer and integration tests related to service catalog

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Fixing missing error msg

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Fixing golint errors

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Fixing error for interactive mode

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Moving interactive mode error to top

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Fixing

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Fixing interactive mode error condition

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Removing some more service related code

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Fixing golint

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Removing service catalog backend part 1

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Updating changelogs

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Removing some more of the service catalog related code

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Updating as per comments in review

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Update pkg/odo/cli/service/create.go

Co-authored-by: Parthvi Vala <pvala@redhat.com>

* Fixing gofmt

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Adding kube to cli docs

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Updating changelog as per comments by @dharmit

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Removing some unnessasary stuff

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Updating docs based changes as per review

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Fixing test

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Update pkg/odo/cli/catalog/describe/service.go

Co-authored-by: Philippe Martin <contact@elol.fr>

* Update pkg/odo/cli/service/list.go

Co-authored-by: Philippe Martin <contact@elol.fr>

Co-authored-by: Parthvi Vala <pvala@redhat.com>
Co-authored-by: Philippe Martin <contact@elol.fr>
2021-08-18 11:41:43 +00:00
Mrinal Das
6b03998f5b Adds a column in odo list output to indicate components created by odo (#4962)
* Adds a column in odo list output to indicate components created by odo

* Updates the changelog.md
2021-08-05 08:40:57 +00:00
Philippe Martin
0fd7a11129 Refactor project command tests (#4849) 2021-07-02 03:14:33 -04:00
Philippe Martin
843e520f6b odo link and odo unlink write to devfile without deploying to cluster (#4819)
* Do not deploy sbr at `odo link` time, save it in devfile

* Changelog

* Fix remove duplicates

* Do not set owner references again

* Fix wait for pod terminating

* Simplify env vars deduplication

* Add comment

* Dont use oc

* link type

* fix

* Fix spinner

* Fix tests

* Fic error message for link/unlink

* Review

* No spinner
2021-07-01 06:43:24 -04:00
Philippe Martin
648592e93a Run operator hub tests in parallel (#4846) 2021-06-24 06:16:05 -04:00
Philippe Martin
73d3b5b955 Set 4 nodes for ginkgo tests (#4811) 2021-06-23 07:15:55 -04:00
Philippe Martin
ec282f8855 Run ginkgo with GOFLAGS="-mod=vendor" to make ginkgo build the tests in vendor mode (#4787) 2021-06-11 10:38:16 -04:00
Tomas Kral
7b44d593e4 use -mod=vendor with all go commands in Makefile and use vendoring to manage ginkgo (#4784)
* export GOFLAGS=-mod=vendor in Makefile

* use go get instead of go install

for installing test dependencies

* use tools approach to manage testing dependencies

When using this apporoach we can make sure that all dependencies in a
proper version are vendored with the source code.

* go mod vendor

* add wwhrd expection for github.com/hinshun/vt10x
2021-06-09 11:18:51 +02:00
Philippe Martin
353785713c Add make help (#4695)
* Add make help

* Update Makefile

Co-authored-by: Dharmit Shah <shahdharmit@gmail.com>

* Update Makefile

Co-authored-by: Dharmit Shah <shahdharmit@gmail.com>

* Update Makefile

Co-authored-by: Dharmit Shah <shahdharmit@gmail.com>

Co-authored-by: Dharmit Shah <shahdharmit@gmail.com>
2021-05-06 06:44:19 -04:00
Anand Kumar Singh
9848769234 Automate psi ci for mac and windows (#4460)
* adding setup script and e2e-intigration,unit test script

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* adding mac and windows jobs

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* fixing typo

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* Consolidating scripts

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* fixing unit test for windows and typo

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* Fixing tests for windows and mac

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* Fixing  mac unit test go not found

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* Fixing  unit tests on windows mac

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* Fixing  unit tests on windows

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* Fixing  unit tests on windows

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* adding exchange for PSI tests

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* adding exchange for PSI tests

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* fixing typo

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* fixing unit test

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* fix unit test using cache

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* rebase

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* increase oc download time

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* windows unit test fix & fix for oc on mac

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* windows unit test

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* remove e2e test from this PR

Signed-off-by: anandrkskd <anandrkskd@gmail.com>

* increase timeout for test & change ci-firewall version

Signed-off-by: anandrkskd <anandrkskd@gmail.com>
2021-05-05 03:14:15 -04:00
Girish Ramnani
0307191508 implement devfile conversion ( with --now support) on --s2i without --git flag (#4518)
* implement devfile conversion ( with --now support) on --s2i without --git flag

* fix unit tests

* resolve failing tests

* small fix

* more test fixes

* more failing tests

* fix multiple tests

* forgot to push

* fix debug port error

* fix failures

* resolve no ports error

* more test fixes

* fixing more failures in tests

* fix more tests

* small fix

* changes

* update more tests

* fix more tests

* more tests

* fix more tests

* more test resolved

* add comment on test

* remove and updated tests

* fixed more tests

* removed FIt

* Removed FIt

* fix tests

* fix unit test

* fix more tests

* more tests fixed

* fix some e2e tests

* commented some tests

* add images back

* change --git links

* more images

* comment

* fix comments

* fix e2e images test

* address tests

* add requested test and helpers

* more cleanup

* remove dependence on kubectl

* use different port

Co-authored-by: Tomas Kral <tkral@redhat.com>
2021-04-20 12:13:12 -04:00
Mohammed Ahmed
6027c7eb3c Updating segment variable= dev key as default overrideable with ldflags (#4585)
* Updating segment varialbe= dev key as default overrideable with ldflags

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>

* Changing const to var

Signed-off-by: Mohammed Zeeshan Ahmed <mohammed.zee1000@gmail.com>
2021-04-05 14:12:13 +02:00
Girish Ramnani
5e943225dc removal of docker tests and related helper code (#4521) 2021-03-17 07:07:00 -07:00
rnapoles-rh
9200a7f99c #3377 adding odo devfile support test (#4179)
* #3377 adding odo devfile support test

* #3377 replaced spaces with a Tab

* #3377 updated focus value

* #3377 addressed all Priti's comments in PR

* #3377 addressed additional comments from Priti's comments in PR

* #3377 adding make test-e2e-devfile
2020-11-20 01:13:14 +01:00
Anand Kumar Singh
aa4c528ff2 Enable link unlink target for 311 servicecatalog test (#3969) 2020-10-31 05:17:03 +01:00
Jonathan West
391e124b46 Status support: Event notification support for build and application status for IDE integration for devfile scenarios (#3431)
* Status support: Event notification support for build and application status for IDE integration for devfile scenarios

* Status support: Event notification support for build and application status for IDE integration for devfile scenarios

* Status support: Event notification support for build and application status for IDE integration for devfile scenarios

* Status support: Event notification support for build and application status for IDE integration for devfile scenarios

* Status support: Event notification support for build and application status for IDE integration for devfile scenarios

* Status support: Event notification support for build and application status for IDE integration for devfile scenarios

* Status support: Event notification support for build and application status for IDE integration for devfile scenarios

* Rebase

* Rebase

* Respond to review comments

* Make gofmt happy

* Add podwatcher unit tests

* Fix go vet

* Fix linter issues

* Rebase

* Fix unit test

* Fix unit test

* Fix unit test

* Respond to review comments

* Make linter happy

* Rebase

* Use latest URL APIs

* Response to API changes

* Fix rebase artifacts

* Fix rebase artifacts

* Respond to API changes

* Remove experimental flag

* Rebase to latest
2020-10-23 18:15:37 -04:00
Mrinal Das
b1245a5337 Adds app commands for devfile components (#4007)
* Adds app commands for devfile components

* Fixes log messages and comments

* Fixes s2i app test script

* Fixes s2i local config components

* Removes devfile test for help

* Adds unit test cases for List()

* Updates integration tests

* Fixed alias in import
2020-10-12 08:36:00 -04:00
John Collier
c3dc721a81 Update vendor-update makefile target (#4086)
Signed-off-by: John Collier <jcollier@redhat.com>
2020-10-06 15:44:28 -04:00
Chris Laprun
442d40991f implement odo describe for devfile (#3843)
* feat: add GetName and GetNamespace methods to LocalConfigProvider

* refactor: remove redundant resolveProject

This is accomplished by making resolveNamespace take a
LocalConfigProvider instance instead of LocalConfigInfo.
Also record the project/namespace when creating a devfile context.

* refactor: rename and improve resolveComponent, set component on devfile

Renamed to resolveAndSetComponent making it an internalContext method,
taking a LocalConfigProvider instead of LocalConfigInfo. Also now set
the resolved component on the receiver context.

* fix: make describe Complete work with devfiles, simplify

* refactor: make LocalConfigInfo.GetURL return EnvInfoURL

* fix: typo

* feat: add GetDebugPort and GetURL to LocalConfigProvider

* refactor: rename ConfigFileExists & EnvInfoFileExists to Exists

* feat: add Exists method to LocalConfigProvider

* feat: add GetEnv method to LocalConfigProvider & implementations

* fix: revert adding GetEnv because it introduces import cycle

It's impossible to parse a devfile within the envinfo package because
the parser package now depends on the config package which I think it
shouldn't depend on. :(

* feat: first implementation supporting describe for devfiles

* fix: error format

* fix: break from loop as soon as project is found

* fix: properly set namespace of clients

* fix: handle error

* refactor: use map, initialized only once and not per call

* fix: use oc client if k8s client failed

* fix: typos

* fix: allow creating components with invalid namespaces

Not sure why this should be working but that's what the tests say…

* fix: revert resolveProject function

Seems like having a single function to resolve the namespace should be
enough but it gets too complicated too quickly and cleaning up this
mess is not the goal of this PR anyway… :sad:

* fix: properly set project on context

* fix: properly retrieve the state based on deployment availability

* fix: check DC if deployment doesn't exist :(

* fix: no need to return a pointer

* fix: change type to `devile: <component name>`

* feat: export GetLocalDevfileStorage to be able to reuse it

* feat: add URL and storage output to describe for devfiles

* fix: typos

* chore: add integration test

* feat: always set discovery client on fakeclient

* feat: cache result of isResourceSupported

* feat: make it possible to create a client from an existing config

* refactor: simplify validateSourceType

* feat: make ListIngressAndRoute work with an optional LocalConfigProvider

* feat: abstract the cluster representation of the component

* fix: only use devfile name

* fix: sort URLs by name to have consistent output

* fix: use action's name to return proper DC instead of relying on count

* feat: make describe integration test plain k8s only, add pushed test

* fix: use PushedComponent to make describe work on k8s and when pushed

* feat: add make target for devfile describe integration tests

* fix: return an error instead of panicking

* feat: add GetComponentNames to avoid building full components and use it

* fix: utility packages shouldn't depend on cli packages

* feat: make occlient link to kclient to be able to use it when needed

* feat: make PushedComponent return URLs as well

* fix: getRemoteComponentMetadate now retrieves URLs from PushedComponent

* fix: typo

* fix: only retrieve routes if they are supported

* fix: no need to keep pointer to Deployment/DeploymentConfig

* fix: removed unused code

* fix: removed unused code

* fix: stupid mistake

* chore: add doc

[skip ci]

* chore: add doc

[skip ci]

* fix: deal with URLs uniformly between s2i and devfile

* fix: URLs are routes unless otherwise specified

* fix: do not set path by default

* fix: sort component names

* test: check to see if that makes test work better that way…

* TMP: panic on unknown GetPushedComponent error to get a stack

* fix: allow unauthorized and forbidden errors to fall back to DC check

* fix: ignore some errors when trying to get URLs or PushedComponents

* fix: lazy init URLs so that they're only retrieved when needed

* refactor: simplify ListIngressAndRoute signature

* fix: also check cause in case the error is wrapped
2020-09-19 09:31:38 -04:00
Priti Kumari
56c69f66bb Comment out docker make target from Makefile (#3896) 2020-09-05 07:00:36 -04:00
Tomas Kral
d7a88c2021 use go get to download gosec (#3895)
official method using install.sh doens't support ppc64
2020-09-05 07:00:28 -04:00
Tomas Kral
ebe51e886b Switch from glide to go mod (#3866)
* switch to go modules

* update vendor (go mod vendor)

* swithing to go mod: update docs and makefile

* update goget-tools

* use go mod verify to check vendor

* Update goget-tools

- pin goget-tools versions
- update gikgo to 1.14.0
- reset GOFLAGS for goget-tools
- fix ginkgo get for Prow

* go mod: replace github.com/kr/pty with github.com/creack/pty

* update vendor (go mod vendor)

* fix make cross target

-mod=vendor was not used for corss compiling
2020-09-03 07:49:41 -04:00
Amit Rout
6c1ff48d3e Run missing debug command against 4.x cluster (#3821)
* Run missing debug command against 4.x cluster

* Updated travis file with respect to the changes

* Fixing job timeout

* Updated test target

* Updated test timeout

* Updated review comment

* clean up

* clean up

* CI time balancing

* CI time balancing and cleanup
2020-08-31 14:22:25 -04:00
Girish Ramnani
68bc98ba89 odo config for devfile (#3702)
* add feature complete odo set and unset

* added json output

* added json output for odo config

* resolved golint

* addressed some comments

* separated out devfile and s2i run sections

* Add example and descriptions

* some spacing

* added integration tests

* only odo injected ports can be managed

* typo resolved and DRYed the config tests

* updated desc and use dns friendly component name

* add devfile config tests to travis

* resolved the panic

* format the help for all config flows

* now a user can remove all ports

* resolved failing tests

* added the format test back

* not pushing in intg test

* added unit tests for devfile config

* unique portname for different protocol

* removed a comment
2020-08-26 06:37:21 -04:00
Priti Kumari
32a845459c Adding plugin handler test makefile target (#3787)
* Adding plugin handler test makefile target

* Adding plugin handler make target in travis
2020-08-21 01:30:48 +02:00
Mrinal Das
7c6dc41853 Adds storage create and delete commands for devfiles. (#3626)
* Adds storage create and delete commands for devfiles.

* Uses a existing error type and creates a new NotFoundError type

* fixes order of errors while creating volumes

* adds json output for storage delete and adds tests

* fixes capitalization of error messages and comments and uses constants in the code

* Adds support for context flag

* Fixes unit test for devfile writer and updates yaml tags for devfile endpoint fields

* Adds context flag in s2i test
2020-08-17 19:34:47 +02:00
Jingfu Wang
5ba5d2ad1a Implement odo env (#3616)
* feat: implement `odo env`

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* fix: unit tests issue

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* test: fix envinfo unit tests

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* fix: disallow unsupported parameters and add tests

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* test: add integration tests

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* refactor: make command case-insensitive + tests

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* refactor: add warning and fix unit test

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* refactor: fix typo and refactor

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* fix: unit tests

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>

* test: improve integration tests

Signed-off-by: jingfu wang <jingfu.j.wang@ibm.com>
2020-08-12 11:36:35 -04:00
sarveshtamba
8b6a698844 CI support for ODO on IBM P (#3643)
* CI support for ODO on IBM P

* CI support for ODO on IBM P
2020-08-10 11:46:48 -04:00
Tomas Kral
cea3b23f32 Update golangci-lint to latest version and fix some linting errors (#3682)
* make latest golangci-lint happy

* update golangci-lint to 1.30.0
2020-08-06 04:49:58 +02:00
Amit Rout
b3cf595506 Remove deprecated images and update tests (#3587)
* Remove deprecated nodejs 8 images

* Update README

* Updated README

* Addressed review comments

* Fixing unit test failure

* Addressed review comment

* Fixing travis failure

* Checking oc version

* Applying supported image imagestream

* Applying supported image imagestream

* Added supported is

* Debugging

* Cleanup

* Updated test doc

* Cleanup
2020-07-27 03:31:33 +02:00
Zheng Xiao Mei
4b6498c386 CI support for IBM Z (#3529) 2020-07-24 10:19:53 +02:00
Stephanie Cao
81adbcc24f Odo test cmd for devfile 2.0 (#3400)
* first commit to save change

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* able to run odo test

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* add test in adapters

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* test works

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* add integration test

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* fix integration test

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* address code review comments

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* remove comments

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* add more tests

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* fix some typo

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* remove content added by mistake

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* update error message, and the integration test

* address review comments

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* simplify the error return

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* test command should have 0 args

Signed-off-by: Stephanie <stephanie.cao@ibm.com>

* add test in the docker test description

* modify trivis.yaml file

Signed-off-by: Stephanie <stephanie.cao@ibm.com>
2020-07-16 20:09:05 -04:00
Mrinal Das
9be483fb86 Adds exec command for devfile components with kube push target (#3083)
* Adds exec command for devfile components with kube push target

* Adds comments

* Modifies tests to run on kubernetes clusters

* Modifies exec logic to use GetPodUsingComponentName()

* Fixes context directory detection, adds comments and fixes the example

* Updates names of the Travis tests
2020-07-15 07:25:16 -04:00
Aditi Sharma
a9ebc8cfa1 Implement odo log for devfiles (#3384)
* Implement odo log for devfile

implement odo log for k8s for run command
Fix color unset for follow
Make common function to display log

* Implemented for docker

* Add debug flag for odo log
Add Integrations test for odo log

* Add Docker Integration tests

* Fix unit test for odo log

* Implemented odo logs for debug

* Rebase and address some review comment

* Address some more review comments

* Address some more review comments

* Update odo log debug test

Add log tests in travis
2020-07-09 14:40:54 +02:00
Mrinal Das
fd349dee65 Adds debug command for devfiles (#3059)
* Adds debug command for devfiles

* Fixes comments and variable names

* Adds devfile debug test on kubernetes cluster

* Fixes adapter code for debug

Signed-off-by: mik-dass <mrinald7@gmail.com>

* Converts v1 debug test devfile to v2

* Moves container arg and command overriding to a new function

* Simplifies conditions in test

* Modifies execDevfile for kubernetes component adapter

* Simplies error checking logic in TestUpdateContainersWithSupervisord

* Removes unnecessary else if conditions

* Installs socat before running tests on kubernetes cluster
2020-06-19 09:29:44 -04:00