Bug 1387167

Summary: oc new-app failed to detect git remote private repo
Product: OKD Reporter: shiyang.wang <shiywang>
Component: BuildAssignee: Cesar Wong <cewong>
Status: CLOSED NOTABUG QA Contact: Wang Haoran <haowang>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.xCC: aos-bugs
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-10-21 01:44:23 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description shiyang.wang 2016-10-20 09:34:12 UTC
Description of problem:

When use oc new-app to create app with remote private repo, there are no warning message print, instead user need input user/pass of the private repo two times.

Also for ssh clone, there is no warning, after created, build failed.

Version-Release number of selected component (if applicable):
oc v1.4.0-alpha.0+44fd91b
kubernetes v1.4.0+776c994
openshift v1.4.0-alpha.0+44fd91b

How reproducible:
Always

Steps to Reproduce:
1.oc new-app https://gitlab.com/shiywang/ruby-hello-world.git

Actual results:

oc [root@ip-172-18-6-114 ~]# oc new-app https://gitlab.com/shiywang/ruby-hello-world.git
Username for 'https://gitlab.com': shiywang
Password for 'https://shiywang@gitlab.com':
Username for 'https://gitlab.com': shiywang
Password for 'https://shiywang@gitlab.com':
--> Found Docker image 82978e3 (5 days old) from Docker Hub for "centos/ruby-22-centos7"
 
    Ruby 2.2
    --------
    Platform for building and running Ruby 2.2 applications
 
    Tags: builder, ruby, ruby22
 
    * An image stream will be created as "ruby-22-centos7:latest" that will track the source image
    * A Docker build using source code from https://gitlab.com/shiywang/ruby-hello-world.git will be created
      * The resulting image will be pushed to image stream "ruby-hello-world:latest"
      * Every time "ruby-22-centos7:latest" changes a new build will be triggered
      * WARNING: this source repository may require credentials.
                 Create a secret with your git credentials and use 'set build-secret' to assign it to the build config.
    * This image will be deployed in deployment config "ruby-hello-world"
    * Port 8080 will be load balanced by service "ruby-hello-world"
      * Other containers can access this service through the hostname "ruby-hello-world"
 
--> Creating resources ...
    imagestream "ruby-22-centos7" created
    imagestream "ruby-hello-world" created
    buildconfig "ruby-hello-world" created
    deploymentconfig "ruby-hello-world" created
    service "ruby-hello-world" created
--> Success
    Build scheduled, use 'oc logs -f bc/ruby-hello-world' to track its progress.
    Run 'oc status' to view your app.
[root@ip-172-18-6-114 ~]# oc get pod
NAME                       READY     STATUS    RESTARTS   AGE
ruby-hello-world-1-build   1/1       Running   0          3s
[root@ip-172-18-6-114 ~]# oc logs ruby-hello-world-1-build
Cloning "https://gitlab.com/shiywang/ruby-hello-world.git" ...
error: build error: failed to fetch requested repository "https://gitlab.com/shiywang/ruby-hello-world.git" with
provided credentials


2. oc new-app git:shiywang/ruby-hello-world.git
--> Found Docker image 82978e3 (5 days old) from Docker Hub for "centos/ruby-22-centos7"
 
    Ruby 2.2
    --------
    Platform for building and running Ruby 2.2 applications
 
    Tags: builder, ruby, ruby22
 
    * An image stream will be created as "ruby-22-centos7:latest" that will track the source image
    * A Docker build using source code from ssh://git/shiywang/ruby-hello-world.git will be created
      * The resulting image will be pushed to image stream "ruby-hello-world:latest"
      * Every time "ruby-22-centos7:latest" changes a new build will be triggered
      * WARNING: this source repository may require credentials.
                 Create a secret with your git credentials and use 'set build-secret' to assign it to the build config.
    * This image will be deployed in deployment config "ruby-hello-world"
    * Port 8080 will be load balanced by service "ruby-hello-world"
      * Other containers can access this service through the hostname "ruby-hello-world"
 
--> Creating resources ...
    imagestream "ruby-22-centos7" created
    imagestream "ruby-hello-world" created
    buildconfig "ruby-hello-world" created
    deploymentconfig "ruby-hello-world" created
    service "ruby-hello-world" created
--> Success
    Build scheduled, use 'oc logs -f bc/ruby-hello-world' to track its progress.
    Run 'oc status' to view your app.
➜  ~ oc get pod
NAME                       READY     STATUS    RESTARTS   AGE
ruby-hello-world-1-build   0/1       Error     0          16s

Expected results:

* WARNING: this source repository may require credentials.Create a secret with your git credentials and use 'set build-secret' to assign it to the build config.

Additional info:

Comment 1 Cesar Wong 2016-10-20 22:34:37 UTC
@shiyang.wang I see the warning in both outputs (https and ssh) you included above.

Comment 2 shiyang.wang 2016-10-21 01:44:23 UTC
@cesar wong, sorry, It may not be located where I expected to see it, it was my mistake.