Coder Social home page Coder Social logo

bosh-vmrun-cpi-release's People

Contributors

micahyoung avatar mvalliath avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

bosh-vmrun-cpi-release's Issues

Fix graceful recovery after environment shutdown

  • Support bosh create-env after director is hard-shutdown
  • Support bosh create-env when VMX files have been deleted
  • Support bosh deploy for existing deployment after VMs are shutdown
  • Support bosh recreate for existing deployment after VMs are shutdown
  • Support bosh deploy when VMX files have been deleted

Fix race condition when two VMs try to create vm at the same time

Task 5 | 22:24:29 | Preparing deployment: Preparing deployment (00:00:00)
Task 5 | 22:24:29 | Preparing package compilation: Finding packages to compile (00:00:00)
Task 5 | 22:24:29 | Compiling packages: 7zip/c1dc6c69e6d29a7e39752711fa1eeb74c17aac65
Task 5 | 22:24:29 | Compiling packages: golang-windows/cd8520750605724aa618cfa7228f0794a6993fbc
Task 5 | 22:24:31 | Compiling packages: 7zip/c1dc6c69e6d29a7e39752711fa1eeb74c17aac65 (00:00:02)
L Error: CPI error 'Bosh::Clouds::CloudError' with message 'Running '/Applications/VMware Fusion.app//Contents/Library/vmrun clone /Users/micah/workspace/vmfiles/vm-store-path/cs-4006ae40-590b-49ba-6cec-0600ad7fb1d4/cs-4006ae40-590b-49ba-6cec-0600ad7fb1d4.vmx /Users/micah/workspace/vmfiles/vm-store-path/vm-c0284a54-7cca-4c4a-5020-a5bd2cc72fae/vm-c0284a54-7cca-4c4a-5020-a5bd2cc72fae.vmx linked -cloneName=vm-c0284a54-7cca-4c4a-5020-a5bd2cc72fae: Error: Cannot open VM: /Users/micah/Box/workspace/vmfiles/vm-store-path/cs-4006ae40-590b-49ba-6cec-0600ad7fb1d4/cs-4006ae40-590b-49ba-6cec-0600ad7fb1d4.vmx, The file already exists
': exit status 255' in 'create_vm' CPI method

Bug: Can't use VMs that have sharedFolders

Reproduce

  1. bosh deploy
  2. vmrun addSharedFolder ...
  3. bosh recreate
  4. Error:
    Windows:
                    L Error: CPI error 'Bosh::Clouds::CloudError' with message 'Running 'c:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe start E:\vmfiles\vm-store\vm-72200b02-1f70-407a-723b-56edbe34b7d3\vm-72200b02-1f70-407a-723b-56edbe34b7d3.vmx nogui: Error: Cannot open VM: E:\vmfiles\vm-store\vm-72200b02-1f70-407a-723b-56edbe34b7d3\vm-72200b02-1f70-407a-723b-56edbe34b7d3.vmx, Cannot read the virtual machine configuration file
': exit status 4294967295' in 'detach_disk' CPI method (CPI request ID: 'cpi-227537')

Support bosh director and full deployments

Requirements:

  • Modify jobs/packages/vmrun_cpi/cpi.erb to act as a shim
    • On hypervisor: Make a copy of the cpi-{platform}, config.json and stemcell store on the hypervisor VM.
    • On hypervisor: Ensure authorized_keys has entry for restricted,command="<cpi> -configPath <config.json>" ssh-rsa...
    • On director: call actual cpi-{platform} remotely over SSH using hypervisor machine
  • Change create_stemcell to optionally ignore imagePath and instead use a stemcell store on hypervisor machine of unextracted pristine stemcells.
    • Would use cloudProperty metadata then scan all hypervisor stemcells' stemcell.MF manifests to find match.
    • Works around hypervisor CPI-over-ssh not having access to director's imagePath location
    • This could also enable light stemcells for use both in create-env / upload-stemcell / deploy for significant speed up by not verifying stemcells every time.
    • Change to be idempotent

WIP: branch: bosh-deployment

Document limitations

  • Workstation/Fusion must be closed while running + Fusion Force Quit workaround

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.