Skip to content

Instantly share code, notes, and snippets.

@RobertoSchneiders
RobertoSchneiders / deploy_with_ebcli3_on_circleci.md
Last active December 4, 2023 09:07
Settings to deploy to AWS Elastic Beanstalk on CircleCi (EB Cli 3)

This is how I configured the deploy of my rails apps to AWS Elastic Beanstalk through CircleCI 1.0.

If you are using the Circle CI 2.0, take a look at this article from ryansimms

Configure Environments Variables

On Project Settings > Environment Variables add this keys:

  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
    The aws user must have the right permissions. This can be hard, maybe, this can help you.
@RobertoSchneiders
RobertoSchneiders / elasticbeanstalk_deploy_iam_policy.md
Last active October 11, 2023 11:35
IAM Policy for deploy on Elastic Beanstalk

I am deploying with this IAM using Codeship and Circle CI to Elastic Beanstalk. I had a lot of trouble with this config. I talked to the aws support for about 6 hours until this worked properly, so, I guess it is worth to share.

UPDATE: In the end, I have to use the AWSElasticBeanstalkFullAccess policy. My custom policy keep breaking every week with some new added permission or some EB internal change. Anyway, the IAM I was using is below.

This works for me with CircleCI and EB Cli.

{
    "Version": "2012-10-17",
    "Statement": [
        {
version: '3.3'
services:
mysql_5_7:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: ""
MYSQL_ALLOW_EMPTY_PASSWORD: 1
MYSQL_DATABASE: "db"
volumes:
@RobertoSchneiders
RobertoSchneiders / sidekiq.config
Created October 9, 2015 19:01 — forked from hiattp/sidekiq.config
Sidekiq Config for Elastic Beanstalk
# Sidekiq interaction and startup script
files:
"/opt/elasticbeanstalk/hooks/appdeploy/post/50_restart_sidekiq.sh":
mode: "000755"
content: |
#!/bin/bash
. /opt/elasticbeanstalk/hooks/common.sh
. /opt/elasticbeanstalk/support/envvars
@RobertoSchneiders
RobertoSchneiders / rubycritic.sh
Last active June 15, 2018 22:26
RubyCritic CI Script
#!/bin/sh
# Ruby Critic Threshold
threshold=99
# Run rubycritic analysis with json format
result="$(rubycritic app lib config -f json)"
exit_code=$?
if [ "$exit_code" != "0" ]; then
@RobertoSchneiders
RobertoSchneiders / stop_all.bat
Created May 23, 2016 19:26
Para todos os serviços do windows com um determinado nome
wmic service where "name like 'MondeServer%'" call stopservice
@RobertoSchneiders
RobertoSchneiders / README.md
Created May 22, 2016 02:29 — forked from joakimk/README.md
CircleCI elixir build example

This runs a build for a small elixir (phoenix) project in about 40 seconds by caching as much of the compiled files as possible.

We've been using this for months in multiple projects without any issues. Please ping be if there is any issues with this script and I'll update it.

It should be generic enough to work on any elixir app using mix.

If you have a elixir_buildpack.config, then enable that section in the build script to keep versions in sync!

@RobertoSchneiders
RobertoSchneiders / install_ex.sh
Created May 21, 2016 17:33 — forked from jimsynz/install_ex.sh
I use this to install Elixir on Codeship.
#!/bin/sh
# I use this to install Elixir on our codeship instances for testing. YMMV.
# curl -O https://gist.githubusercontent.com/jamesotron/44f8962cddef781ab830/raw/e75599e95587cbca26e707505fd40dd0f26eb0f5/install_ex.sh
# . ~/install_ex.sh
# You can override your Elixir and Erlang versions from your shell when you call ./install_ex.sh.
ERLANG_VERSION=${ERLANG_VERSION:-18.0.3}
ELIXIR_VERSION=${ELIXIR_VERSION:-1.0.5}
@RobertoSchneiders
RobertoSchneiders / gist:6979062
Created October 14, 2013 17:29
PersistenciaParceiroSysmoService JSON
{
"id": null,
"bloqueado": 0,
"codigo": "666666",
"nome": "Escritorio Contabil 6",
"email": "escritorio6@sysmo.com.br",
"bases": null,
"modulosSistema": [
{
"id": 1,
@RobertoSchneiders
RobertoSchneiders / gist:6699342
Created September 25, 2013 13:09
retorno de AquisicaoClientesSysmoService
[
{
"id": 1,
"bloqueado": 0,
"codigo": "1234",
"nome": "Conta Oeste Ltda",
"bases": [
{
"id": 1,
"nome": "Primeira Base"