A fast and easy local Cloud Foundry experience on native hypervisors, powered by LinuxKit with VPNKit
Clone or download
Latest commit dedcd2e Jan 8, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
acceptance Add explicit 'deploy-service' command in acceptance test Jan 4, 2019
analyticsd Refine conditional for analyticsKey in analyticsd Nov 26, 2018
bosh Refactor bosh.Config Nov 27, 2018
cfanalytics Sent analytics when a service is deployed Dec 28, 2018
cfdevd Remove all old BOSH ips addresses Nov 7, 2018
cmd Allow an injectable build version Jan 7, 2019
config Allow an injectable build version Jan 7, 2019
daemon removed retry logic from winsw service stopping, and removed debug st… Dec 3, 2018
env Extract new bosh certificate yaml file Nov 30, 2018
errors Restructure src code to be an importable golang application Aug 31, 2018
host cfanalytics sends os versions Sep 27, 2018
hypervisor Remove unused logs Nov 30, 2018
metadata -f supports a .tgz file Nov 12, 2018
network Correct log path on windows Nov 28, 2018
profiler Switch implementation of available memory fetcher Oct 29, 2018
provision Refactor deployservices Jan 4, 2019
resource Decrease time to read file from tar Nov 16, 2018
runner Autoformatting of the code Nov 7, 2018
semver Restructure src code to be an importable golang application Aug 31, 2018
shell update provisioner Nov 8, 2018
ssh Stream state.json out of bosh container after deploy Nov 29, 2018
unset-bosh-all-proxy Restructure src code to be an importable golang application Aug 31, 2018
.gitignore Send os version with analytics within analyticsd Sep 27, 2018
CONTRIBUTING.md Create CONTRIBUTING.md Feb 23, 2018
LICENSE Create LICENSE Feb 21, 2018
NOTICE Create NOTICE May 22, 2018
README.md Fix build badge link Jan 8, 2019
buildtest.sh Restructure src code to be an importable golang application Aug 31, 2018
generate-plugin-windows.ps1 Allow an injectable build version Jan 7, 2019
generate-plugin.sh Allow an injectable build version Jan 7, 2019
go.mod go.mod updates Jan 4, 2019
go.sum github.com/docker/docker from go.mod Nov 20, 2018
main.go Run gofmt on some of the files Nov 14, 2018
meow.sh Restructure src code to be an importable golang application Aug 31, 2018
run-docker-tests.ps1 Restructure src code to be an importable golang application Aug 31, 2018
run-docker-tests.sh Restructure src code to be an importable golang application Aug 31, 2018
run-tests.sh Restructure src code to be an importable golang application Aug 31, 2018

README.md

ci.pcfdev.io

$ cf dev start
Downloading Resources...
Starting VPNKit ...
Starting the VM...
Deploying the BOSH Director...
Deploying CF...

  ██████╗███████╗██████╗ ███████╗██╗   ██╗
 ██╔════╝██╔════╝██╔══██╗██╔════╝██║   ██║
 ██║     █████╗  ██║  ██║█████╗  ██║   ██║
 ██║     ██╔══╝  ██║  ██║██╔══╝  ╚██╗ ██╔╝
 ╚██████╗██║     ██████╔╝███████╗ ╚████╔╝
  ╚═════╝╚═╝     ╚═════╝ ╚══════╝  ╚═══╝
             is now running!

To begin using CF Dev, please run:
    cf login -a https://api.dev.cfdev.sh --skip-ssl-validation

Admin user => Email: admin / Password: admin
Regular user => Email: user / Password: pass


CF Dev is a new distribution of Cloud Foundry designed to run on a developer’s laptop or workstation using native hypervisors and a fully functional BOSH Director. CF Dev gives application developers the full Cloud Foundry experience in a lightweight, easy to install package. CF Dev is intended for application developers who wish to develop and debug their application locally on a full-featured Cloud Foundry. CF Dev is also an excellent getting started environment for developers interested in learning and exploring Cloud Foundry.

Prerequisites

  • CF CLI
  • Internet connection (or Dnsmasq or Acrylic) required for wildcard DNS resolution
  • Please note CF Dev only supports MacOS and Windows 10 at this time

Recommended system requirements

  • Operating system: MacOS 10.12+/Windows 10+
  • CPU: 2 Cores or more
  • Memory: 8 Gigabytes available memory
  • Disk: 60GB available space

Install

  1. (if needed) Uninstall your existing PCF Dev plugin if it is installed cf uninstall-plugin pcfdev
  2. Install the CF Dev plugin cf install-plugin -r CF-Community "cfdev".

Start

Run CF Dev cf dev start.

Run BOSH with CF Dev

  1. (if needed) Install BOSH CLI v2.
  2. Set environment variables to point BOSH to your CF Dev instance eval "$(cf dev bosh env)".
  3. Run BOSH bosh <command you want to run>.

Project Backlog

Follow the CF Dev team's progress here. This backlog contains a prioritized list of features and bugs the CF Dev team is working on. Check the project board for the latest updates on features and when they will be released.

Uninstall

To stop CF Dev run cf dev stop. This will completely stop and destroy the CF Dev VM.

To uninstall the CF Dev cf CLI plugin run cf uninstall-plugin cfdev.

Telemetry

Here on the CF Dev team, we use telemetry to help us understand how our tool is being used. We value our users privacy, therefore all telemetry is completely anonymous. There is no way for anyone with the telemetry to identify who is using the CF Dev tool. In an effort to make our data as transparent as possible, we will be publishing aggregated anonymous usage data to this page periodically to help our user community understand how the tool is being used.

In addition to making this data completely anonymous, we require users to opt-in to allowing us to collect telemetry from their tool. Upon running $ cf dev start for the first time, we will prompt the user to opt-in to capturing analytics. Any time after that you can turn on/off telemetry by running $ cf dev telemetry --on/off

You can learn more about what we do with telemetry here

TCP Ports

The tcp port range has been limited to 1024 - 1049 to prevent reaching file descriptor limits on some systems.

Contributing

If you are interested in contributing to CF Dev, please refer to the contributing guidelines.