cloudfoundry-community / windows-stemcell-concourse

Provides tasks to take a Windows ISO and transform to a Windows stemcell for Cloud Foundry, in VSphere.
MIT License
13 stars 6 forks source link

Instructions for air gapped environments #2

Closed tezizzm closed 4 years ago

tezizzm commented 4 years ago

This solution will be valuable to many that are in air gapped environments.

Provide instructions and/or a list of resources that need to be moved into the environment to allow this solution to be utilized in an air gapped environments.

ddieruf commented 4 years ago

My idea is to create an air-gapped branch that only has pipeline.yml and vars-min.yml. These will be augmented resource types and variables for getting needed things.

List of needed things and where I believe they could live on the network...

Changes to be made in master branch

Change to be made in air-gapped branch pipeline.yml

Thoughts @sneal ?

sneal commented 4 years ago

@ddieruf It'd be better to support offline pipelines as first class citizens in the master branch as it's pretty common to have some limitations on internet access. We can probably add offline instructions to the readme from what you've started in this thread.

In addition to what you've mentioned we also have the apt-get installed dependencies to account for.

sneal commented 4 years ago

Ultimately replacing the cobbled together binaries, resources, and scripts with a single golang binary would make offline pipelines much easier. Most of the xml processing, string replacement, and file downloading could easily be done via golang without external dependencies.

While I haven't looked at it I'm betting there's a way to replace the LGPO.exe with a golang lib that interacts with the Win32 API that stembuild or something else could use thus removing another dependency we can't redistribute.

ddieruf commented 4 years ago

I am working on access to https://hub.docker.com/u/cfcommunity. Looking to create an ubuntu image with all necessary binaries. This will clean things up a bit and give us something to distribute for offline pipelines.

ddieruf commented 4 years ago

With the docker image now listed, I've added direction for offline scenarios. @sneal and @tezizzm if you agree this fills the need I would like to close the issue.

sneal commented 4 years ago

@ddieruf Did you try running it offline?

sneal commented 4 years ago

Govc is Apache2 licensed so I believe we can include that in the base image. LGPO and Stembuild will have to come from Microsoft and Pivotal respectively.

I think we should remove the need to use pivotalservices/concourse-curl-resource by removing the resource and just curl'ing the file from the task. There's no real benefit to treat that as a resource.

ddieruf commented 4 years ago

I like the portability of lgpo in the task. Then one can choose where it should come from. If it's curl'd within the task are you thinking of an option to provide the url or default to M$ site?

On Nov 12, 2019, 7:01 PM, at 7:01 PM, Shawn Neal notifications@github.com wrote:

Govc is Apache2 licensed so I believe we can include that in the base image. LGPO and Stembuild will have to come from Microsoft and Pivotal respectively.

I think we should remove the need to use pivotalservices/concourse-curl-resource by removing the resource and just curl'ing the file from the task. There's no real benefit to treat that as a resource.

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/cloudfoundry-community/windows-stemcell-concourse/issues/2#issuecomment-553173735