- Install Docker (www.docker.com)
- Install the latest version of Node - currently 6.10.3 (https://nodejs.org/en/download/package-manager) or update your version - if
node -v
comes back as <6 (http://stackoverflow.com/questions/8191459/how-do-i-update-node-js) - Clone the repo
git clone [email protected]:pawar-2018/pawar2018.git
- Start the docker container
docker-compose up -d
- In another terminal tab,
cd
in to your local clone of the repo and runnpm install
. - To start your dev server, run
npm start
. This proxies from localhost:8000, which is where Docker is running, so you do need Docker from step 3 running as well. - You might need to restart your vms (docker-compose restart) if you are getting a pawar2018 not found error
- If you're just running onto merge conficts or want to make sure you build before pushing (this will be fixed when we get deployment more figured out, sorry, because this will get annoying really fast) you can just run
npm run build
. - Go through the Wordpress Installation and then head to "Setting up Wordpress Locally"
- Install Docker Toolbox on Windows (https://docs.docker.com/toolbox/toolbox_install_windows/), you'll need Python installed
- Clone the repo
git clone [email protected]:pawar-2018/pawar2018.git
- Start the docker container with Docker Quickstart Terminal
- You will need to change the volumes for Wordpress in
docker-compose.yml
to:volumes: - /wp-content:/var/www/html/wp-content
- Navigate in the CL to your local file path where
docker-compose.yml
is located
docker-compose up -d
- Open Oracle VM and look for your Docker VM(default)
- Right click docker VM(default) and select Settings > Shared Folders
- Mount the location where you clone the repo into by adding a shared folder Folder Path EX: C:\github\username\pawar2018\wp-content Folder Name EX: wp-content
- You might need to restart the VM if it doesn't mount the folder path
- Verify the files in the VM console(double click the VM for console)
- The VM terminal will have the path
root@default:~
navigate withcd ..
to the root andcd wp-content/themes/
check the for the folderpawar2018
withls
- Fetch your IP in the Docker terminal with docker-machine ip
- Go to http://docker-machine-ip-here:8000
- Run
npm install
in the repo's root directory through terminal wherepackage.json
exists npm run build
in terminal, this will run the script for gulp to compile Sass/SCSS
- Go to
http://localhost:3000/wp-admin/themes.php
- Choose
Activate
on thePawar2018
theme
- Go to
http://localhost:3000/wp-admin/options-permalink.php
- Choose the
Post name
option - Save Changes
- Go to plugins.
- Choose
Activate
on the Members Plugin, so your Admin user has the right permissions.
Currently, the quickest way to get the content is to use the Migrate DB plugin. To import the content from the stag
- Get Mica or John to give you a Staging Login. They can be Slacked.
- Once logged in, click on CPT UI on the left hand side and then Import/Export Post Types.
- Copy the JSON in Export Post Types
- Go back to your local version of Wordpress at http://localhost:3000 and click on CPT UI
- Paste that into Import Post Types and then Import. If there is an error here, it's fine, just tap in #webdev and we can see what's up.
Next, you'll want to import the database from staging into your dev environment. To do this:
- On the staging website, log in as an admin, click "Tools" and then "Migrate DB"
- Go to the "Settings" tab and copy the URL and copy all of the text in "Connection Info"
- In the WP Admin interface on your local setup, click "Plugins" and activate the "Github Updater" and "WP DB Sync" plugins
- After the plugins are active, click "Tools" and then you'll see a new "Migrate DB" tool on your local environment
- Select the "Settings" tab and paste the URL/token that you copied from staging
- Go back to the "Migrate" tab, and select the "Pull" radio button
- Scroll down to the bottom of the "Migrate" window and then click "Migrate DB"
A window will launch that will show the progress of the import. Once it's completed you should see the settings reflected locally. Your username/password on the local dev environment will change to what it was on the staging server.
- Production (master) http://ameyapawar2018.wpengine.com
- Staging (dev) http://ameyapawar2018.staging.wpengine.com
- Localhost http://localhost:3000 or 8000, depending
For this project, we will follow the [GitHub Standard Fork & Pull Request Workflow] (https://gist.github.com/Chaser324/ce0505fbed06b947d962). All work should be done on branches in a developers fork. Note that we do our work on the "dev" branch, rather than "master"
For Project Tracking and Dev Task management we use Trello. You can find all the relevant tasks in the Pawar2018 #webdev trello board. Tasks move from left to right as they move from idea to deployed. We attach members to cards to indicate ownership over the tasks. We have a handful of labels we use regularly, including "priority" and "external request." If you have questions about either the process or any current tasks, ask Mica or Jordan in slack please!
- New tasks created by either Dev Team members or requests from other teams (email, social, etc) come into the "Inbox" list.
- Engineering and Product leads (Mica and Jordan) review the requests on a weekly basis and sort them into either "Coming Soon" or "Backlog."
- "Backlog" tasks are ones that we would like to get to but are not on the immediate roadmap. This might be because they are not a priority or because they are not fully fleshed out.
- "Coming Soon" is a list of the tasks we would like to accomplish shortly, which usually means the next 2 weeks. These tasks should have enough detail so that anyone with a local environment can add themesevles to the task and begin working on them.
- Tasks that are being worked on should be in the "In Progress" list. This helps the leads understand what is being worked on and if any tasks have become stale.
- Once you are ready for a review (for example on a PR for the wordpress site) pull the card over to the "Review" list and let everyone know in the #webdev slack channel.
- Once your task is reviewed, Mica or another lead will move it into Staging and move it into Done once we do our weekly deploy.
- We also have one more list for "Blocked" tasks. These are tasks that we have started on or are ready to move on but we are waiting on an external team like Copy or Design.
- @mephraim
- @micada
- @vwampage
- @brianmontanaweb
- @peterbinks
- [@john-telford] (https://github.com/john-telford)
- [@gensym] (https://github.com/gensym)
- Update dev setup instructions
- Add coding standards
- Add integration standards