Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- version: 2
- jobs:
- build:
- working_directory: ~/up-hill/anotherfolder
- parallelism: 1
- shell: /bin/bash --login
- environment:
- CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
- CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
- DEBUG: true
- docker:
- - image: circleci/php:7.1-node-browsers
- steps:
- - run:
- name: Install Maria DB
- command: sudo apt-get install -y mariadb-server-10.1 mariadb-server-core-10.1 mariadb-client-10.1 mariadb-client-core-10.1
- - run:
- name: Initializing Mysql
- command: 'sudo service mysql status || sudo service mysql restart; '
- - run:
- name: Set password
- command: sudo mysql -u root -e "USE mysql; UPDATE user SET password=PASSWORD('root') WHERE User='root';FLUSH PRIVILEGES;"
- - run:
- name: Check settings
- command: sudo mysql -u root -proot -e "USE mysql; UPDATE user SET plugin='mysql_native_password' WHERE User='root'; SELECT User, Host, plugin FROM mysql.user WHERE user = 'root';grant all privileges on *.* to root@'127.0.0.1' identified by 'root';FLUSH PRIVILEGES; SELECT host FROM user WHERE user = 'root';SELECT @@port;SELECT @@hostname;"
- - run:
- name: Restarting Mysql
- command: 'sudo service mysql status || sudo service mysql restart; '
- - run:
- name: Create Mysql database and show current databases
- command: sudo mysql -uroot -proot -e "create database common_resources_test;SHOW DATABASES"
- - run:
- name: Install required Libraries for PHP-GD
- command: sudo apt-get update && sudo apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libpng-dev
- - run:
- name: Install PHP Extensions (PHP-GD && PDO-MYSQL)
- command: sudo docker-php-ext-install gd && sudo docker-php-ext-install pdo_mysql
- - run:
- name: Install Other required Libraries for PHP & Activating PHP-GD and PDO-MYSQL
- command: sudo docker-php-ext-install -j$(nproc) iconv && sudo docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ && sudo docker-php-ext-install -j$(nproc) gd && sudo docker-php-ext-enable pdo_mysql
- - run:
- name: Create folder for Circle Artifacts and Circle Test Reports
- command: mkdir -p $CIRCLE_ARTIFACTS $CIRCLE_TEST_REPORTS
- - run:
- name: Download Composer
- command: curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
- - run:
- name: Download Yarn
- command: curl -o- -L https://yarnpkg.com/install.sh | bash
- - run:
- name: Install Yarn
- command: sudo yarn install
- - checkout
- - run:
- name: Running Composer Install
- command: composer install --no-interaction;
- - run:
- name: Creating folder for PHPUnit Tests
- command: mkdir -p $CIRCLE_TEST_REPORTS/phpunit
- - run:
- name: Checking Mysql Status
- command: 'sudo service mysql status'
- - run:
- name: Running PHPUnit Tests
- command: ./vendor/bin/phpunit --configuration ./phpunit.xml.dist --log-junit $CIRCLE_TEST_REPORTS/phpunit/junit.xml
- - store_test_results:
- path: /tmp/circleci-test-results
- - store_artifacts:
- path: /tmp/circleci-artifacts
- - store_artifacts:
- path: /tmp/circleci-test-results
- deployment:
- docker:
- - image: circleci/python:3.6-jessie
- steps:
- - run:
- name: Install awsebcli
- command: sudo apt-get -y -qq update && sudo apt-get install python-pip python-dev build-essential && sudo pip install awsebcli --upgrade
- - checkout
- - run:
- name: Create AWS credentials manually
- command: |
- mkdir ~/.aws
- touch ~/.aws/config
- chmod 600 ~/.aws/config
- echo "[profile eb-cli]" > ~/.aws/config
- echo "aws_access_key_id=$AWS_ACCESS_KEY_ID" >> ~/.aws/config
- echo "aws_secret_access_key=$AWS_SECRET_ACCESS_KEY" >> ~/.aws/config
- - run:
- name: Deploy to S3
- command: eb deploy --profile eb-cli
- workflows:
- version: 2
- build_and_test:
- jobs:
- - build:
- filters:
- tags:
- only: /.*/
- - deployment:
- requires:
- - build
- filters:
- branches:
- only: pre-production
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement