Bug 1686943

Summary: Running "create manifests" twice consumes the Common Manifests and the Master Machines
Product: OpenShift Container Platform Reporter: Matthew Staebler <mstaeble>
Component: InstallerAssignee: Matthew Staebler <mstaeble>
Installer sub component: openshift-installer QA Contact: Qin Ping <piqin>
Status: CLOSED ERRATA Docs Contact:
Severity: unspecified    
Priority: unspecified CC: bleanhar, crawford
Version: 4.1.0   
Target Milestone: ---   
Target Release: 4.1.0   
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: 2019-06-04 10:45:20 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:
Attachments:
Description Flags
installer log none

Description Matthew Staebler 2019-03-08 17:22:10 UTC
Created attachment 1542184 [details]
installer log

Description of problem:
When the user runs "create manifests" twice in succession, the installer consumes the Common Manifests and the Master Machines assets, removing them from disk. This does not prevent a subsequent run of "create cluster" from succeeding, as the assets are still part of the state file. However, the manifests target should result in all of the manifests being available on disk.

Version-Release number of the following components:
openshift-installer v0.14.0

How reproducible:
every time

Steps to Reproduce:
1. openshift-install create manifests --dir=out
2. openshift-install create manifests --dir=out

Actual results:
$ openshift-install create manifests --dir=out
INFO Consuming "Master Machines" from target directory 
INFO Consuming "Common Manifests" from target directory 

$ ls ./out -alR
./out/:
total 200
drwxrwxr-x.  3 staebler staebler   4096 Mar  8 12:17 .
drwxr-xr-x. 21 staebler staebler   4096 Mar  8 12:16 ..
drwxr-xr-x.  2 staebler staebler   4096 Mar  8 12:17 openshift
-rw-rw-r--.  1 staebler staebler  35523 Mar  8 12:17 .openshift_install.log
-rw-r--r--.  1 staebler staebler 151749 Mar  8 12:17 .openshift_install_state.json

./out/openshift:
total 40
drwxr-xr-x. 2 staebler staebler 4096 Mar  8 12:17 .
drwxrwxr-x. 3 staebler staebler 4096 Mar  8 12:17 ..
-rw-r--r--. 1 staebler staebler  293 Mar  8 12:17 99_binding-discovery.yaml
-rw-r--r--. 1 staebler staebler  219 Mar  8 12:17 99_cloud-creds-secret.yaml
-rw-r--r--. 1 staebler staebler  181 Mar  8 12:17 99_kubeadmin-password-secret.yaml
-rw-r--r--. 1 staebler staebler  329 Mar  8 12:17 99_openshift-cluster-api_cluster.yaml
-rw-r--r--. 1 staebler staebler 6877 Mar  8 12:17 99_openshift-cluster-api_worker-machineset.yaml
-rw-r--r--. 1 staebler staebler 2709 Mar  8 12:17 99_openshift-cluster-api_worker-user-data-secret.yaml
-rw-r--r--. 1 staebler staebler  222 Mar  8 12:17 99_role-cloud-creds-secret-reader.yaml


Expected results:
Expected that the files from the Common Manifests and Master Machines asset would still be on disk.

Comment 1 Matthew Staebler 2019-04-02 14:37:27 UTC
The crux of the issue is that the asset store deletes files as part of each fetch, for which there are multiple for each installer target. Instead, the installer should delete files *after* performing all the fetches, preserving the files for all of the assets fetched.

Comment 2 Alex Crawford 2019-04-10 22:13:22 UTC
Is this a blocker for 4.1 or can we bump it out to 4.2?

Comment 3 Brenton Leanhardt 2019-04-11 18:08:55 UTC
https://github.com/openshift/installer/pull/1556

Comment 4 Qin Ping 2019-04-12 06:08:17 UTC
Verified with:
$ ./openshift-install version
./openshift-install v4.1.0-201904110044-dirty
built from commit 64c27a5b5f6c27147b53eae1616c968f0761021f
release image registry.svc.ci.openshift.org/openshift/origin-release:v4.0

Comment 6 errata-xmlrpc 2019-06-04 10:45:20 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2019:0758