Giter Site home page Giter Site logo

gradle-migrations-plugin's People

Contributors

marceloemanoel avatar mircea-pop avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

gradle-migrations-plugin's Issues

Enable customization through command line arguments

All tasks parameters should be configurable through command line. All command line arguments should overwrite the default parameters of the build. Parameters should have synonyms, a descriptive and a short version such as this:

$ gradle migrateNew -Pdescription="My migration description"

should be equivalent to

$ gradle migrateNew -Pd="My migration description"

Implement Script command

iBATIS Migrations provides the script command to generate a script that can migrate a schema from one version to another.

Document release 0.2

Provide documentation for plugin version 0.2

Provide information on the following topics:

  • Usage
  • New Tasks
  • Customization

Implement Version command

The version command allow to migrate the schema to any specific version of the database you like.
You simply call it, specifying the version you’d like to end up at, and the migrations system figures out
whether it has to go up or down, and which migrations it needs to run.

Enable migrations configuration with extension point

Extension points enable namespaced configuration and customization. Enable plugin configuration with an extension point. All the common properties that exist on the plugin convention should be part of the extension point.

To use the extension point one should write such code on the build script file:

migrations {
  baseDir = "migrations" 
  environment = "development"
  force = true
}

All elements on the extension point should be optional.

Enable environment customization through migrations extension point

Instead of using properties files under

baseDir/
└── environments
    ├── development.properties
    ├── production.properties
    └── test.properties

Enable these configurations to be located on the migrations extension point like this:

migrations {
  environments {
    development {
      //development properties...       
    }
    test {
     //test properties...
    }
    production {
      //production properties
    }
  }
}

And eliminates the properties files.

Error running MigrateUp when specifying a database.

development.properties
time_zone=GMT+0:00 username=adminuser send_full_script=false password=****** delimiter=; full_line_delimeter=false auto_commit=true changelog=CHANGELOG driver=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/admin

Result ->

:migrateUp FAILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':migrateUp'.

    Error executing command. Cause: java.lang.ArrayIndexOutOfBoundsException

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.