touch /.circleci/config.yml

create new folder “.circleci” and new file “config.yml” followed instruction of CircleCI add Projects for target Github repository.

Here is config.yml

# PHP CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-php/ for more details
#
version: 2
jobs:
  build:
    docker:
      # specify the version you desire here
      - image: circleci/php:7.1-browsers
      
      # Specify service dependencies here if necessary
      # CircleCI maintains a library of pre-built images
      # documented at https://circleci.com/docs/2.0/circleci-images/
      # - image: circleci/mysql:9.4

    working_directory: ~/repo

    steps:
      - checkout

      # Download and cache dependencies
      - restore_cache:
          keys:
          - v1-dependencies-{{ checksum "composer.json" }}
          # fallback to using the latest cache if no exact match is found
          - v1-dependencies-

      - run: composer install -n --prefer-dist

      - save_cache:
          paths:
            - ./vendor
          key: v1-dependencies-{{ checksum "composer.json" }}
        
      # run tests!
      - run: phpunit

Update project file

echo "This is circle ci test3!"

build

Somehow it seems like I understand or do not understand.
Now, we will start to touch Travis CI.

Try using CircleCI

facebook, kickstarter, spotify are using CircleCI.

Aouth CircleCI with Github

CircleCI dashboard

Failed? What!!

let’s watch job detail

Build-agent version 0.1.1480-7a5183d3 (2019-01-22T18:14:45+0000)
Starting container bash:4.4.19
  using image bash@sha256:9f0a4aa3c9931bd5fdda51b1b2b74a0398a8eabeaf9519d807e010b9d9d41993

Using build environment variables:
  BASH_ENV=/tmp/.bash_env-5c486cf91773df0008cbcc61-0-build
  CI=true
  CIRCLECI=true
  CIRCLE_BRANCH=master
  CIRCLE_BUILD_NUM=2
  CIRCLE_BUILD_URL=https://circleci.com/gh/githubix/test/2
  CIRCLE_COMPARE_URL=
  CIRCLE_JOB=Build Error
  CIRCLE_NODE_INDEX=0
  CIRCLE_NODE_TOTAL=1
  CIRCLE_PREVIOUS_BUILD_NUM=1
  CIRCLE_PROJECT_REPONAME=test
  CIRCLE_PROJECT_USERNAME=githubix
  CIRCLE_REPOSITORY_URL=git@github.com:githubix/test.git
  CIRCLE_SHA1=faed9c8c981615655d296d6137e3abdb9dddfc0d
  CIRCLE_SHELL_ENV=/tmp/.bash_env-5c486cf91773df0008cbcc61-0-build
  CIRCLE_STAGE=Build Error
  CIRCLE_USERNAME=githubix
  CIRCLE_WORKFLOW_ID=bd789861-e6e6-428d-877a-888ff642a15c
  CIRCLE_WORKFLOW_JOB_ID=23b817b9-9ef5-4bcc-861e-93fddfe7e6c7
  CIRCLE_WORKFLOW_UPSTREAM_JOB_IDS=
  CIRCLE_WORKFLOW_WORKSPACE_ID=bd789861-e6e6-428d-877a-888ff642a15c
  CIRCLE_WORKING_DIRECTORY=~/project
#!/bin/sh -eo pipefail
# No configuration was found in your project. Please refer to https://circleci.com/docs/2.0/ to get started with your configuration.
# 
# -------
# Warning: This configuration was auto-generated to show you the message above.
# Don't rerun this job. Rerunning will have no effect.
false

It is said “No configuration was found in your project”

Oh, understood the issue that do I need to create yml file??

How to use Circle CI?

CicleCI is CI service.
https://circleci.com/

By registering from the above page, we can automatically build, test, and deploy like Jenkins.

Jenkins needs to set up a Jenkins server on its own, but since CircleCI is a service that can be used only by registering.

Features
– It is a CI service
– Can cooperate with GitHub
– Run the build in the container under the concept of container
– Free for one container use (billing is required for multiple use)

Concept of Container
Although it is not limited to CircleCI, the CI tool has the concept of “Container”

Features
– As the name implies “box/container” image
– Run build, test and deploy in the container
– As the number of containers increases, the speed increases as it can be executed in parallel. However, CircleCI will be charged for using more than two containers.

When executing two or more builds, waiting time occurs because only one can be executed even when we run a lot of test, it can take time only because it can only be executed in series.