Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Codespaces #2881

Merged
merged 1 commit into from
Sep 5, 2023
Merged

Codespaces #2881

merged 1 commit into from
Sep 5, 2023

Conversation

FloThinksPi
Copy link
Member

@FloThinksPi FloThinksPi commented Jul 25, 2022

Thanks for contributing to cloud_controller_ng. To speed up the process of reviewing your pull request please provide us with:

  • A short explanation of the proposed change:

With this change one can use githubs codespaces feature that will create a development environment on a vm. A click in the Github UI will create an instance. Its free for all(single instance) except cooperations.

image

  • An explanation of the use cases your change solves

With a simple click on now ends up with a fully functional development environment. This includes:

  • UAA Instance
  • Minio S3 Blobstore
  • Nginx Reverse Proxy for package uploads
  • Mariadb and Postgresdb
  • Run Configurations for VSCode and Intellij/Rubymine to start right away
  • Tunneling SSH from the container to localhost to be able to connect with Intellij/Rubymines new remote ssh feature

At startup the DBs are set up, migrated and seeded and also all bundle packages get installed. The setup of a codespaces takes rughly 5 minutes. Once a codespace is stopped it wont get recreated at startup so startup times are nearly instant. Also changes to the environment are persisted between restarts. Only if one choses to throw away a codespace and recreate it, thats when the build times come on top of starting times and any temporary change to the environment is gone.

We will use this as our main development environment for CC. In case it gets unmaintained its a simple delete of a folder that is just used by the github codespaces functionality.

Also this enables super simple start on developing in CC for most endpoints (excluding diego and loggregator functionality for now).

  • I have reviewed the contributing guide

  • I have viewed, signed, and submitted the Contributor License Agreement

  • I have made this pull request to the main branch

  • I have run all the unit tests using bundle exec rake

  • I have run CF Acceptance Tests

@philippthun
Copy link
Member

@FloThinksPi - Rebasing to the current main branch fixes mysql:8.0 tests.

@FloThinksPi FloThinksPi force-pushed the codespaces branch 2 times, most recently from 209b964 to 73423a9 Compare August 1, 2022 07:50
@FloThinksPi FloThinksPi force-pushed the codespaces branch 24 times, most recently from 2e752e9 to 059d758 Compare July 6, 2023 15:20
@FloThinksPi FloThinksPi force-pushed the codespaces branch 13 times, most recently from d6b9876 to 433eaaa Compare September 4, 2023 10:55
@FloThinksPi FloThinksPi force-pushed the codespaces branch 5 times, most recently from ac4f071 to be3fd5a Compare September 5, 2023 13:13
@FloThinksPi FloThinksPi self-assigned this Sep 5, 2023
@FloThinksPi FloThinksPi force-pushed the codespaces branch 2 times, most recently from 7a47bcd to 97c7122 Compare September 5, 2023 13:46
With this change one can use githubs codespaces feature that will create a development environment on a vm. A click in the Github UI will create an instance. Its free for all(single instance) except cooperations.

With a simple click on now ends up with a fully functional development environment. This includes:

- UAA Instance
- Minio S3 Blobstore
- Nginx Reverse Proxy for package uploads
- Mariadb and Postgresdb
- A service broker with configureable behaviour (CATS Broker)
- Run Configurations for VSCode and Intellij/Rubymine to start right away
- Tunneling SSH from the container to localhost to be able to connect with Intellij/Rubymines new remote ssh feature

At startup the DBs are set up, migrated and seeded and also all bundle packages get installed. The setup of a codespaces takes rughly 5 minutes. Once a codespace is stopped it wont get recreated at startup so startup times are nearly instant. Also changes to the environment are persisted between restarts. Only if one choses to throw away a codespace and recreate it, thats when the build times come on top of starting times and any temporary change to the environment is gone.

We will use this as our main development environment for CC. In case it gets unmaintained its a simple delete of a folder that is just used by the github codespaces functionality.

Also this enables super simple start on developing in CC for most endpoints (excluding diego and loggregator functionality for now).
@FloThinksPi FloThinksPi merged commit 0e2578b into main Sep 5, 2023
6 checks passed
@FloThinksPi FloThinksPi deleted the codespaces branch September 5, 2023 14:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants