1
0
mirror of https://github.com/openshift/installer.git synced 2026-02-05 15:47:14 +01:00
W. Trevor King edcd705e46 pkg/asset/filefetcher: Only load files on demand
Avoid:

  $ bin/openshift-install cluster
  FATAL Error executing openshift-install: open tests/smoke/vendor/github.com/prometheus/procfs/fixtures/26231/fd/0: no such file or directory

as the old implementation attempts to walk the whole directory and
hits:

  $ ls -l tests/smoke/vendor/github.com/prometheus/procfs/fixtures/26231/fd/
  total 0
  lrwxrwxrwx. 1 trking trking 24 Oct  5 01:26 0 -> ../../symlinktargets/abc
  lrwxrwxrwx. 1 trking trking 24 Oct  5 01:26 1 -> ../../symlinktargets/def
  lrwxrwxrwx. 1 trking trking 24 Oct  5 01:26 10 -> ../../symlinktargets/xyz
  lrwxrwxrwx. 1 trking trking 24 Oct  5 01:26 2 -> ../../symlinktargets/ghi
  lrwxrwxrwx. 1 trking trking 24 Oct  5 01:26 3 -> ../../symlinktargets/uvw

With this commit, we only load files from the disk when someone asks
for them.

I've adjusted the unit tests a bit because:

* ioutil.ReadFile returns errors like:

    read /: is a directory

  for directories.  There does not appear to be an analog to
  os.IsNotExist() for this condition, so instead of checking for it in
  the tests, I've just dropped the empty-string input cases.  If we
  break something and call FetchByName on an empty string, we want to
  error out, and that error message is appropriately descriptive
  already.

* Globs are not as precise as regular expressions, so our glob would
  match master-1x.ign and similar which the previous regexp excluded.
  But loading a few extra files doesn't seem like that big a deal, and
  folks adding files with names like that seems unlikely.
2018-10-19 11:27:07 -07:00
2018-10-05 09:59:29 -07:00
2016-08-09 13:19:44 -07:00
2014-01-19 12:25:11 -08:00
2017-02-10 09:36:49 -08:00
2018-10-06 06:00:20 +02:00
2018-04-23 08:50:17 -04:00

Openshift Installer

Supported Platforms

Quick Start

First, install all build dependencies.

After cloning this repository, the installer binary will need to be built by running the following:

hack/build.sh

This will create bin/openshift-install. This binary can then be invoked to create an OpenShift cluster, like so:

bin/openshift-install cluster

The installer requires the terraform binary either alongside openshift-install or in $PATH. If you don't have terraform, run the following to create bin/terraform:

hack/get-terraform.sh

The installer will show a series of prompts for user-specific information (e.g. admin password) and use reasonable defaults for everything else. In non-interactive contexts, prompts can be bypassed by providing appropriately-named environment variables. Refer to the user documentation for more information.

Connect to the cluster

Console

Shortly after the cluster command completes, the OpenShift console will come up at https://${OPENSHIFT_INSTALL_CLUSTER_NAME}-api.${OPENSHIFT_INSTALL_BASE_DOMAIN}:6443/console/. You may need to ignore a certificate warning if you did not configure a certificate authority known to your browser. Log in using the admin credentials you configured when creating the cluster.

Kubeconfig

You can also use the admin kubeconfig which openshift-install cluster placed under --dir (which defaults to .) in auth/kubeconfig. If you launched the cluster with openshift-install --dir "${DIR}" cluster, you can use:

export KUBECONFIG="${DIR}/auth/kubeconfig"

Cleanup

Destroy the cluster and release associated resources with:

openshift-install destroy-cluster
Description
Install an OpenShift cluster
Readme 1.2 GiB
Languages
Go 85.1%
HCL 10.8%
Shell 2.8%
Python 1.2%