MageCI - [ABADONED] Magento Continuous Integration Tools

Related tags

Miscellaneous MageCI
Overview

Magento Continuous Integration Tools

A set of tools to help set up a proper environment for testing magento

Installation

Installation is very easy though composer.json

In your application or dependent library root directory, create a composer.json file. In case you are not familiar with Composer, see composer.json Schema.

In the require or alternatively in the require-dev section, add the following dependency:

"ecomdev/mage-ci": "dev-master"

Usage

Running a batch of PHPUnit tests

$ mage-ci phpunit <directory> <OPTIONS> 
    Runs unit tests for all phpunit.xml or phpunit.dist.xml files in <directory> or its subdirectories. 
    <OPTIONS> will be passed directly to phpunit binary.

Installing a particular Magento version

$ bin/mage-ci install <magento_directory> <version> <db_name> <OPTIONS>
    Installs a Magento version to a specified destination
      -c                  Create databases flag
      -t                  Create test database flag (only in combination with -c option)
      -u  <db_user>       DB Username
      -p  <db_pass>       DB Password
      -r  <sql_base_url>  SQL dumps repository url for a particular Magento version (<sql_base_url>/<version>.sql.gz)
      -f  <sql_dump_file> SQL dump file, if you'd like to preinstall some data and specfied -c option

Installing a Magento module

$ bin/mage-ci install-module <magento_directory> <module_dir_or_vcs_url>
    Installs a Magento module with modman definition 

Updating installed Magento modules

$ bin/mage-ci update-modules <magento_directory>
    Updates all installed modman modules at specified Magento instnace 

Uninstalling Magento version

$ bin/mage-ci uninstall <magento_directory> [<db_name>] <OPTIONS>
    Performs uninstall of Magento instance
      -u  <db_user>       DB Username
      -p  <db_pass>       DB Password

Uninstalling Magento module

$ bin/mage-ci uninstall-module <magento_directory> <module_dir_or_vcs_url>
    Performs uninstall of Magento module from instance

Mass Install of Magento versions

$ bin/mage-ci install-multiple <directory> <prefix> <version1> ... <versionN> <OPTIONS>
    Installs multiple version of magento at <directory> in subdirectories which name is a combined value of <prefix>-<version> 
       -d  <download_dir>  Directory where all downloads are stored
       -u  <db_user>       DB Username
       -p  <db_pass>       DB Password
       -t                  Create test db as well
       -r  <sql_base_url>  SQL dumps repository url for a particular Magento version (<sql_base_url>/<version>.sql.gz)

Dump databases of existing installed versions

$ bin/mage-ci db-dump <directory> <prefix> <version1> ... <versionN> <OPTIONS>
    Creates Magento database dump file at <directory> directory with name <file_prefix><version>.sql.gz, the dumped database is <prefix>_<version>
       -u  <db_user>       DB Username
       -p  <db_pass>       DB Password
       -s  <file_prefix>   sql file prefix

Magento Clean DB Dumps

It is possible to specify base url for downloading of database dump for a particular Magento version. Most of the time clean installation of Magento takes a lot of time, so it is nice to have this clean db dump prepared for each Magento version.

We created such repository at the following url: http://mage-ci.ecomdev.org

You just need to specify it during installation of process:

$ bin/mage-ci install magento-1.7.0.2 1.7.0.2 mage_1.7.0.2 -r http://mage-ci.ecomdev.org 

This command will download db dump from the following URL: http://mage-ci.ecomdev.org/1.7.0.2.sql.gz

Comments
  • Mac OS X error

    Mac OS X error

    I have no idea what to do. If I understand it correct, readlink is not useable under OS X. Then it falls back to realpath, which is obviously missing :-/ Any ideas?

    brank:tmp myUserName$ vendor/bin/mage-ci install /Users/myUserName/__htdocs/magento 1.7.0.2 mage -u mage -p naaYStF8wrNG3J45
    readlink: illegal option -- f
    usage: readlink [-n] [file ...]
    vendor/bin/mage-ci: line 19: realpath: command not found
    
    opened by Schrank 4
  • `readlink -f` does not exist on OSX

    `readlink -f` does not exist on OSX

    Unfortunately will probably require a solution such as https://github.com/magento/taf/commit/0312cb9129d9812c523487233b5893ee7b9988f9#runtests.sh unless there are any better ideas?

    opened by punkstar 1
  • Fixed missing pathname quotes and incompatibilties with git bash

    Fixed missing pathname quotes and incompatibilties with git bash

    Most pathnames weren't quoted leading to instable behavior with paths containing spaces.

    Additionally added support for systems that do not have realpath and readlink. Similar with tput, if not available ANSI escape sequences are used.

    opened by hakre 0
  • Allow defintion of a PHP binary for PHP commands

    Allow defintion of a PHP binary for PHP commands

    In order to test my Magento extension across multiple versions of PHP As a Magento extension developer I want to be able to install different versions of Magento against different versions of PHP

    opened by punkstar 0
  • Add optional parameter for DB hostname

    Add optional parameter for DB hostname

    Adds an optional parameter -h to the applicable tasks so that you can specify a hostname for the database connection.

    I've needed this option when using Semaphore as localhost wasn't working but switching to 127.0.0.1 was.

    opened by josh-taylor 0
Owner
EcomDev B.V.
Providing High Performance Web-shops since 2010
EcomDev B.V.
A tool that allows to quickly export data from Magento 1 and Magento 2 store and import it back into Magento 2

Simple Import / Export tool A tool that allows to quickly export data from Magento 1 and Magento 2 store and import it back into Magento 2. Table data

EcomDev B.V. 51 Dec 5, 2022
netz98 magerun CLI tools for Magento 1

netz98 magerun CLI tools for Magento 1 The n98 magerun cli tools provides some handy tools to work with Magento from command line. Build Status Latest

netz98 1.4k Dec 31, 2022
Set of front-end tools for Magento 2 based on Gulp.js

Magento 2 Frontools Set of front-end tools for Magento 2 Requirements Unix-like OS (please, do not ask about Windows support) Node.js LTS version. We

SNOW.DOG 433 Dec 6, 2022
Algolia Search integration for Magento 1 - compatible with versions from 1.6.x to 1.9.x

Algolia Search for Magento 1.6+ End of Support ?? The Algolia Magento 1 extension has reached End of Life regarding support and maintenance. We do not

Algolia 163 Dec 20, 2022
LiqPay integration extension for Magento 2

LiqPay Extension for Magento 2 LiqPay payment integration extension for Magento 2. Check out the Wiki pages for the project details. Idea The idea of

Max Pronko 21 Nov 2, 2021
FULL, FREE and SUPPORTED integration with MailChimp Email Marketing for Magento 2.

MageMonkey has been deprecated, please use MailChimp for Magento instead MailChimp official Magento extension Support MageMonkey, Subscribe for a free

Ebizmarts 47 May 23, 2022
Algolia Search integration for Magento 2 - compatible with versions from 2.3.x to 2.4.x

Algolia Search for Magento 2 ?? Need help? Check out our Technical Troubleshooting Guide. For feedback, bug reporting, or unresolved issues with the e

Algolia 147 Dec 20, 2022
Laravel Nova integration for justbetter/laravel-magento-customer-prices

Laravel Magento Customer Prices Nova Laravel Nova integration for justbetter/laravel-magento-customer-prices. Installation Install the package. compos

JustBetter 13 Nov 4, 2022
Laravel Nova integration for justbetter/laravel-magento-prices

Laravel Magento Prices Nova This package is the Laravel Nova integration for justbetter/laravel-magento-prices. Installation Install the package. comp

JustBetter 15 Nov 29, 2022
This package is the Laravel Nova integration for justbetter/laravel-magento-prices

Laravel Magento Products Nova This package is the Laravel Nova integration for justbetter/laravel-magento-products. Installation Install the package.

JustBetter 14 Nov 4, 2022
This Magento 2 extension integrates EasyTranslate into Magento 2.

EasyTranslate Magento 2 Connector This Magento 2 extension integrates EasyTranslate into Magento 2. Mind that you need to have an account with EasyTra

Easytranslate ApS 0 Oct 7, 2022
Magento-Functions - A Resource of Magento Functions

Magento-Functions A Resource of Magento Functions Table of Contents Category Product User Cart Checkout General Account [Working w/ URL's] (#urls) Cat

Bryan Littlefield 28 Apr 19, 2021
Magento - Magento Community Editions

Magento Community Edition /// THIS REPOSITORY IS DEPREACTED /// 1.9.4.1 will be the last version update. Please switch over to OpenMage! Either to the

FireGento e. V. 107 Oct 17, 2022
Magento-Vagrant-Puppet-Nginx - Installs magento and a nginx server

Magento-Vagrant-Puppet-Nginx Installs Magento MySQL PHP PHP-FPM Nginx n98-magerun Setup git submodule init git submodule update vagrant up Modify pupp

Christian Münch 61 Aug 10, 2022
Docker-magento - Docker image for Magento 1.6 to 1.9

Docker image for Magento 1.x This repo creates a Docker image for Magento 1.x. Please note The primary goal of this repo is to create Docker images fo

Fu Cheng 144 Nov 18, 2022
Magento-composer-installer - Composer installer for Magento modules

!!! support the maintainer of this project via Patreon: https://www.patreon.com/Flyingmana Magento Composer Installer The purpose of this project is t

null 213 Sep 24, 2022
Chef-magento - Installs and Configures a Magento project

Description Requirements Chef 0.10.0 or higher required (for Chef environment use). Platform Debian, Ubuntu CentOS, Red Hat, Fedora Your basebox must

Inviqa 3 Jun 30, 2020
Cookbook-magento - Collection of recipes to build app stack for the Magento deployments with Chef

Magento Cookbook Collection of recipes to build app stack for the Magento deployments with Chef Installation With Berkshelf echo "cookbook 'magento',

Yevhen Viktorov 37 Sep 26, 2020