Skip to content
This repository has been archived by the owner on Jan 28, 2022. It is now read-only.

v0.19.0

Compare
Choose a tag to compare
@sclevine sclevine released this 19 Mar 23:06
· 14 commits to master since this release

For release v0.19.0, this repository has moved to the cloudfoundry-incubator Github org.

This release includes a complete refactoring of CF Local and forge to use packs. Packs are buildpack builder images that provide a simple, generic, image-based interface for using buildpacks with a variety of tools that support Docker images.

Release Notes

  • Complete support for HTTP/HTTPS proxies on all platforms (#14)
    Proxy environment variables (such as $http_proxy) that are set in your shell are now propagated into local app containers that are running in Docker.
    Note: To prevent local proxy settings from applying to app containers running in remote Docker servers, this behavior is disabled if $DOCKER_HOST is set to a non-default value. You may override this behavior by setting $CFL_USE_PROXY to true or false.
  • New -t flag: cf local run myapp -t
    This new flag to cf local run starts an interactive terminal in the app's environment.
$ cf local run my-rails-app -t -p 8080
Running my-rails-app on port 8080...
vcap@my-rails-app:~$ ls
app	config.ru     lib	    package.json  README.md  vendor
bin	Gemfile       log	    public	  test	     yarn.lock
config	Gemfile.lock  node_modules  Rakefile	  tmp
vcap@my-rails-app:~$ ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
vcap         1  3.6  2.9 892720 59660 ?        Ssl  08:33   0:01 puma 3.8.2 [app]
vcap         9  0.0  0.1  62536  3836 pts/0    Ss   08:33   0:00 bash
vcap        54  0.0  0.1  59928  2676 pts/0    R+   08:33   0:00 ps aux
vcap@my-rails-app:~$ rails c
Loading production environment (Rails 5.1.0.beta1)
irb(main):001:0>
  • Significant performance enhancements
    This is due to the use of pre-built packs images as well as more aggressive caching introduced in the most recent Cloud Foundry buildpacks.
  • Simplified options for local volume mounting in the cf local stage and cf local run commands
    There is now a single local volume mounting option available via cf local run -d. It always uses the contents of the local directory and uses rsync to copy the files into the app root before the app starts. If you'd like to retrieve a staged app root, it must be manually extracted out of the droplet tarball. Let me know if a cf local extract command would be useful for this purpose.
  • Fixed an SSL validation bug when communicating with Cloud Controller. (#18)
  • Fixed a (pre-release) bug with cf local run -t. (#20)
  • Compiled with Go 1.10 to prevent some crashes on Windows. (#15)
  • Upgraded to Diego 1.32.0.

Compiled with: Go 1.10 on macOS 10.13.2

Roadmap

  • Performance enhancements that will use Docker image layer rebasing to significantly reduce staging time in cases where no app dependencies have changed
  • cf local develop, pending buildpack features
  • Local services marketplace

Known Differences from CF

  • No instance identity credentials
  • No support for adding custom CAs to the system CA store

Known Issues

  • Writes UNIX line endings on Windows in some cases
  • Some file paths may require UNIX path separators (/) on Windows