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

Swap DrupalVM for ddev. #4458

Merged
merged 57 commits into from
Dec 6, 2021
Merged

Swap DrupalVM for ddev. #4458

merged 57 commits into from
Dec 6, 2021

Conversation

joewhitsitt
Copy link
Contributor

@joewhitsitt joewhitsitt commented Nov 18, 2021

Resolves #3641

DDEV UIowa Setup

Note: If you don't have a current setup (M1), you will have to follow some onboarding docs to get git and homebrew setup.

  • vagrant halt on your current setup
  • install docker 4.2.0 for mac - there is a bug with 4.3.0 and here is the workaround if you find yourself up that creek
  • open the docker app and make sure it is "running"
  • brew install drud/ddev/ddev
  • mkcert -install
  • git checkout ddev or main if this has been merged (hello future)
  • if you were testing ddev elsewhere, headover there and ddev stop --unlist uiowa
  • ddev auth ssh
  • ddev composer install
  • ddev start
  • ddev auth ssh
  • ddev ssh
  • blt frontend
  • blt bis
  • blt ds

Additional Notes

  • the new local domain format is *.uiowa.ddev.site, so hr.uiowa.edu is hr.uiowa.ddev.site and gis.sites.uiowa.edu is sitesgis.uiowa.ddev.site
  • If you have an existing docker install, make sure it is up to date, but not too far. 4.2.0
  • This does not clean up the drupalvm stuff completely. 039c7d4
  • You might have to run ddev mutagen sync if your containers seem out of sync.
  • All Git operations need to happen on the host. BLT commands involving git were updated to require being run on host.
  • Checkout the docs for more tidbits: https://ddev.readthedocs.io/en/stable/ (e.g. toggle xdebug, etc.)

To Test

Try to perform normal local environment tasks:

  • blt frontend
  • blt ds --site=sandbox.uiowa.edu
  • drush @sandbox.local cr

Additional resources:
https://iowaweb.slack.com/archives/C8SM82ZFZ/p1638808178159000

@joewhitsitt joewhitsitt added the WIP Work in progress label Nov 18, 2021
@joewhitsitt joewhitsitt mentioned this pull request Nov 18, 2021
6 tasks
@richardbporter
Copy link
Contributor

Checking this out since my local is broken. I might try to get it working in place instead of cloning fresh.

@joewhitsitt
Copy link
Contributor Author

You might have to remove those local.settings and blt bis if you are trying this in your existing setup

@richardbporter
Copy link
Contributor

I skipped this part b/c it seems tailored to single-site:

create a config.web_environment.yaml file in .ddev and add your acquia auth key/secret there using the following format. This is git ignored.
web_environment:
- ACQUIA_API_KEY=asdf
- ACQUIA_API_SECRET=asdf
ddev pull acquia

but I'm already up and running dsa. 👍🏻

@richardbporter
Copy link
Contributor

Should we be ignoring everything in the .ddev directory except certain files? I'm seeing changes and untracked files there. Unclear from the docs here: https://ddev.readthedocs.io/en/stable/users/topics/whats_in_ddev_dir/

@joewhitsitt
Copy link
Contributor Author

A fresh git clone/pull this is all it starts with, so i am not sure i understand. If the single stuff is not necessary for us, just the config file is all that is needed.

Screen Shot 2021-11-19 at 3 57 45 PM

@richardbporter
Copy link
Contributor

I was seeing this when running a git status after starting up:

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .ddev/.dbimageBuild/
        .ddev/.ddev-docker-compose-base.yaml
        .ddev/.ddev-docker-compose-full.yaml
        .ddev/.global_commands/
        .ddev/.homeadditions/
        .ddev/.webimageBuild/
        .ddev/apache/
        .ddev/commands/
        .ddev/homeadditions/
        .ddev/mutagen/
        .ddev/nginx_full/
        .ddev/providers/README.txt
        .ddev/providers/acquia.yaml.example
        .ddev/providers/localfile.yaml.example
        .ddev/providers/pantheon.yaml.example
        .ddev/providers/platform.yaml.example
        .ddev/providers/rsync.yaml.example

Seeing how quickly I can get #4470 working... :)

@joewhitsitt
Copy link
Contributor Author

do you not have a .ddev/.gitignore file?

@richardbporter
Copy link
Contributor

do you not have a .ddev/.gitignore file?

I do now. Swear that wasn't there before...

This PR is leaning towards "just working" as opposed to #4470. Curious if @e-marie-w might have time to try.

@joewhitsitt
Copy link
Contributor Author

My understanding is that Marie is working through the steps as I type this. Not sure at what point the PR was pulled. Might not have the latest commits

@richardbporter richardbporter marked this pull request as ready for review November 22, 2021 17:36
@richardbporter richardbporter marked this pull request as draft November 22, 2021 17:36
@joewhitsitt
Copy link
Contributor Author

joewhitsitt commented Nov 22, 2021

Our package.json might need updating to handle M1. Seeing all kinds of issues related to node-sass and python for M1s. We are running node:14 due to node-sass (sass/node-sass#3033) and nodejs supports M1 starting at node:15.

Temp workaround would be to set the terminal window to use Rosetta nodejs/build#2474

I don't know if it is this simple (when starting a new terminal window):
arch -x86_64 zsh

Long term, we need to adopt a higher node version and make sure our build works with the update dependencies.

@richardbporter
Copy link
Contributor

We should probably update to Node 16: https://nodejs.org/en/about/releases/

@richardbporter richardbporter marked this pull request as draft December 2, 2021 14:51
@richardbporter
Copy link
Contributor

Thanks but I forgot to test sitenow_migrate. 🤦🏻 Doing that now...

@joewhitsitt
Copy link
Contributor Author

Probably want to get everyone currently on this before we merge into main.

@dnkemper
Copy link
Contributor

dnkemper commented Dec 2, 2021

Probably want to get everyone currently on this before we merge into main.

FWIW I had to wipe everything out from testing this to get my vm environment back up and running..

@richardbporter richardbporter removed the WIP Work in progress label Dec 2, 2021
@richardbporter richardbporter marked this pull request as ready for review December 2, 2021 18:34
@richardbporter
Copy link
Contributor

Thanks but I forgot to test sitenow_migrate. 🤦🏻 Doing that now...

Fixed.

@pyrello pyrello self-assigned this Dec 2, 2021
@pyrello
Copy link
Contributor

pyrello commented Dec 2, 2021

Testing this.

@pyrello
Copy link
Contributor

pyrello commented Dec 2, 2021

Am I crazy or is there an extra > uiowa:multisite:noop at the end of blt ds commands?

@richardbporter
Copy link
Contributor

Am I crazy or is there an extra > uiowa:multisite:noop at the end of blt ds commands?

That was added in #4485. We have to specify a no-op for each command we want to override specified in BLT's default sync.commands configuration.

@pyrello
Copy link
Contributor

pyrello commented Dec 2, 2021

Got it.

I am approving this with words since trying to get to the files page is causing my browser to timeout because of the number of file changes. Nice work!

@pyrello pyrello removed their assignment Dec 2, 2021
@richardbporter
Copy link
Contributor

Noticed the functional test written in 2595d9f isn't running in CI. Not a blocker, can be fixed in a follow up.

@joewhitsitt joewhitsitt marked this pull request as draft December 3, 2021 18:45
@joewhitsitt
Copy link
Contributor Author

Converting back to draft until we are ready to merge. Need to update and account for any site provisions/deprovisions, etc. before merge

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.

Move on from Drupal VM?
5 participants