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

Get started dev experience #889

Closed
4 tasks done
kardan opened this issue Nov 5, 2014 · 2 comments
Closed
4 tasks done

Get started dev experience #889

kardan opened this issue Nov 5, 2014 · 2 comments
Assignees
Milestone

Comments

@kardan
Copy link
Contributor

kardan commented Nov 5, 2014

As new people join to help we encountered issues with getting started with the vagrant environment. First issue is that there is a few different locations for the setting up the dev environment. I guess mostly this is the result of that the wiki is fairly outdated https://github.com/akvo/akvo-rsr/wiki. We need to review what we want to communicate & update. But that is outside the scope of this issue.

Multiple locations

https://github.com/akvo/akvo-rsr/blob/develop/vagrant/README.md (1)
https://github.com/akvo/akvo-rsr/wiki/RSR-Vagrant-Development-Environment (2)
https://github.com/akvo/akvo-rsr/wiki/Build-Akvo-RSR-development-environment (3)

Permissions

There is an issue with that the vagrant box tires to perform operations on the akvo/rsr/static folder during collectstatic (which is a part of provisioning) as the rsr user on the vagrant box. This creates issues if in apps static folder is not very liberal (777). Since some files are generated, examples is .js from .jsx files and .css from .scss they don't automagically get set to 777 from PythonReact & sass-convert.

There is a post_merge hook in git_hooks/ but that is only for when merging new files which is not fixing much :(

Code reloading

At the moment the VM have a process that observes RSR with a aggressive watcher. This process is very resource intensive. We could swap it for http://linux.die.net/man/1/inotifywait. Another thought is that maybe we should rebuild the asset pipeline to get rid of permissions. Then maybe using something like https://facebook.github.io/watchman/ would be a natural thing. The built in dev server that can be started with the scripts/devhelper/manage.sh runserver do already offer code reloading. Maybe that is more natural to use.

local_settings and static/

This came up as a problem but it's a bit unsure. Problem was to get assets to load via static-dev/. But quick review of the setup it might not have been the cause of the problems experienced.

Action points

  • Make sure we have one canonical location get started docs
  • Fix permissions issue
  • Code reloading
  • Fix the /static local_con issue
@kardan kardan changed the title Update get started documentation Get started dev experience Nov 5, 2014
kardan added a commit that referenced this issue Nov 5, 2014
- changed owner to rsr on the shared directory
- changed permissions to 755 for dirs and 644 for files
- updated indentation to ruby standard 2 in Vagrantfile
@KasperBrandt KasperBrandt added this to the V3 - v44 and v45 (Alpha) milestone Nov 5, 2014
KasperBrandt added a commit that referenced this issue Nov 5, 2014
kardan added a commit that referenced this issue Nov 6, 2014
- Added Gulpfile.js
- Fixed minor issue in jsx file
@kardan
Copy link
Contributor Author

kardan commented Nov 6, 2014

With "static-dir" & compilation on the host computer we can eliminate the very unproductive step of running the management command collectstatic to get new assets.

Running a watcher on the host adds complexity and but is probably unavoidable.
http://travismaynard.com/writing/getting-started-with-gulp

@kardan
Copy link
Contributor Author

kardan commented Nov 7, 2014

kardan added a commit that referenced this issue Nov 7, 2014
- Added package.json file
- Using django-pipeline in templates
kardan added a commit that referenced this issue Nov 7, 2014
kardan added a commit that referenced this issue Nov 7, 2014
KasperBrandt added a commit that referenced this issue Nov 7, 2014
@KasperBrandt KasperBrandt modified the milestones: V3 - v44 and v45 (Alpha), RSR v3 Jan 20, 2015
@MichaelAkvo MichaelAkvo moved this to Done in RSR Dec 8, 2022
@MichaelAkvo MichaelAkvo added this to RSR Dec 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

No branches or pull requests

2 participants