Code Monkey home page Code Monkey logo

drupdates's People

Contributors

jalama avatar randompants avatar waffle-iron avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

drupdates's Issues

Allow post build steps

Allow for steps that happen after the environment is built.

  • Drush commands
  • system commands (like symlinking your /sites/default/files folder)

Allow dynamic deployment dates

Allow the deployment dates to be entered either on the CLI or in the settings file(s) for staging and Production deployments, they default to the following Friday.

Update mysql plugin to only write .my.cnf if root password = ""

Ideally we can hand all handling of SQL databases to drush. One quirk is that drush --db-su doesn't work without a $HOME/.my.cnf file if you don't have a password on your MYSQL super user account (note: homebrew installs mysql with no password on root by defult) as detailed in this gist https://gist.github.com/jalama/bf3713481b1657f90f1c.

The mysql plugin should conditionally add the $HOME/.my.cnf only if the root password is empty and the driver is mysql. Further the site alias file (drupdates.aliases.drushrc.php) should conditionally add the super user and super user passwords to each site definition. Theoretically, this should give Drupdates support for any DB Drush supports. If this works the mysql driver would just become a more generic sql driver.

Build an installer

Build an install script that will poll the user for settings values when the script is installed

Allow for multiple working dirs

Allow for multiple working directories. To that end allow for the each working dir to have its own settings.yaml file. This would allow you to have multiple configurations per working dir say you have different data stores, file structures, etc...

Create CLI script

Stored in the /bin folder create a bin script to run this from the CLI and be able to pass any setting (including lists and dictionaries) as options (ex --uname='jalama' --blacklist='www.facebook.com, www.google.com')

Need to remove files built during runs

The following files/symlinks are placed in the file system and need to be removed

~/.drush/drupdates.aliases.drushrc.php
~/.drush/settings.py
~/.my.cnf

settings model is storing old merge results

Need to reset the _model property each time it is called, it's causing some settings to get the elements from other settings:
Ex. the webrootDir setting is showing the format = "list" when it should be "", this is from another setting that is a list, it is being carried forward by the _model property.

Run for single site

Allow the script to be run on a single site using a CLI argument or by setting it in the ~./drupdate/utils.yaml file

Email a report of the updated sites

Email a report of the sites that have been updated. The recipients of the report can be set in the settings file(s) or via CLI. The information included should include that sites were updates, the specific modules updates (if any) the url of the various deployment tickets, etc...

Prompt user for blank settings

When a setting is blank (ie MYSQL user name or Stash password) and it's needed prompt the user for the setting value.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.