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

Improve Dev Environment Setup UX #726

Closed
svenefftinge opened this issue Aug 14, 2019 · 5 comments
Closed

Improve Dev Environment Setup UX #726

svenefftinge opened this issue Aug 14, 2019 · 5 comments

Comments

@svenefftinge
Copy link
Member

svenefftinge commented Aug 14, 2019

Setting up a dev environment for a particular project is currently not obvious and tedious for a couple of reasons. This ticket is about improving that experience.

Tell Users About It

Our messaging so far is focussed on starting a dev env from GitHub. The real value, however, is to have a perfect setup for your project. So we should suggest users to create a setup when they open a repository that doesn't have a setup already.

Explain it

The docs should have a tutorial explaining it step by step by example.

  1. create the config files (.yml, .Dockefile)
  2. Explain how to change the Docker file
  3. Explain the start up tasks
  4. Explain the ports
  5. Have a list of advanced topics pointing to the respective section in the reference doc.

Make it Easy

We should update gp init and we could have a command in the IDE that runs it. I'd like to make it non-interactive and just always create two files with reasonable uncommented example code and pointers to the docs.

Make it Easy to Test a Dev Environment

Also I'd like to add an easy way to test a dev environment. Currently users need to create a branch, push it, go to github and start a fresh dev env on that branch. We could instead investigate to support Snapshots using the config it contains in the filesystem and then have a button, that creates and starts (open in a new tab) a snapshot. That way I can put in changes and just click a button to test it. Being able to install stuff locally and /or run only docker builds would be cool as well, but a great dev environment setup is more than just the docker so I feel starting a fresh dev environment would still be preferred even once we allow root and docker builds.

@jankeromnes
Copy link
Contributor

jankeromnes commented Sep 16, 2019

I totally agree that we should greatly improve the "automate your dev setup" experience. And I have a few ideas for that:

  • A more helpful, non-interactive gp init is probably a great first step here
  • We could also build a "gitpodifying wizard" VS Code extension, triggered by command or notification, that takes you by the hand through all the steps (e.g. running gp init, editing the config files, testing them by launching a new workspace, etc.)
  • We could also imagine a sort of gitpodify.me web app, where you input a repository URL, and it takes you through a flow with various forms / options, finally sending an automated gitpodifying PR to your repo (it could also fetch data about the repo to make the forms smarter / more relevant)

The docs should have a tutorial explaining it step by step by example.

  1. create the config files (.yml, .Dockefile)
  2. Explain how to change the Docker file
  3. Explain the start up tasks
  4. Explain the ports
  5. Have a list of advanced topics pointing to the respective section in the reference doc.

Note that the gitpodifying guide is already a sort of tutorial, which explains step-by-step 1. through 4., and also briefly addresses a few advanced topics.

But maybe you're thinking about something inside the docs section, without any intro explaining the benefits of Gitpod, and also separated into clearer sections?

@svenefftinge
Copy link
Member Author

But maybe you're thinking about something inside the docs section, without any intro explaining the benefits of Gitpod, and also separated into clearer sections?

+1

@jankeromnes
Copy link
Contributor

jankeromnes commented Sep 30, 2019

Another idea here: I believe that we could maybe install the docker CLI in Gitpod's default image, and configure it to use Gitpod's image-builder. (Idea originally suggested in #52 (comment)).

As a Gitpod user, I can already make the image-builder build anything by adding a Dockerfile to my project. Having a docker CLI in my workspace is just a more convenient way to do the same thing. And it may potentially help make gitpodifying a bit easier.

@guilhermeariza
Copy link

Blocked host: 3000-df318792-20fb-4a73-a442-aad0810a61d7.ws-us1.gitpod.io
To allow requests to 3000-df318792-20fb-4a73-a442-aad0810a61d7.ws-us1.gitpod.io, add the following to your environment configuration:
config.hosts << "3000-df318792-20fb-4a73-a442-aad0810a61d7.ws-us1.gitpod.io"

This is the error that is appearing to me. Can anybody help me? if you are brazilian, tell me in portuguese please. Thanks for the attention.

i have tried to put this configuration "config.hosts << "3000-df318792-20fb-4a73-a442-aad0810a61d7.ws-us1.gitpod.io"" on app<environments<development.rb

@svenefftinge
Copy link
Member Author

a first version of a better setup experience has landed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants