Skip to content

Instantly share code, notes, and snippets.

Andrey Chernih andreychernih

View GitHub Profile
View self-signed-certificate-with-custom-ca.md

Create Root CA (Done once)

Create Root Key

Attention: this is the key used to sign the certificate requests, anyone holding this can sign certificates on your behalf. So keep it in a safe place!

openssl genrsa -des3 -out rootCA.key 4096
@andreychernih
andreychernih / search.feature
Created Sep 8, 2016
How to test a website blog post
View search.feature
Feature: Search
Scenario: Search for "apple"
Given I am on the front page
When I search for "apple"
Then I should see "apple.com"
@andreychernih
andreychernih / Dockerfile
Created Aug 29, 2016
docker osxfs slowness workaround
View Dockerfile
ENV APP_USER app
ENV BUNDLE_APP_CONFIG /usr/local/bundle
ADD Gemfile $DIR
ADD Gemfile.lock $DIR
# Force bundler to install all gems to system location (/usr/local/bundle) so that when you run `rake` command
# all files are loaded from docker image instead of mounted volume
RUN bundle install --deployment --path $BUNDLE_APP_CONFIG
RUN chown -R $APP_USER $BUNDLE_APP_CONFIG
@andreychernih
andreychernih / tester.rb
Created Oct 16, 2015
variable in ruby shadows method with the same name
View tester.rb
class Tester
def test
if false
# variable 'var' is now in scope because it's defined syntactically (at parse time)
var = 'bar'
end
# variable 'var' shadows method with the same name. variable 'var' was defined, but never assigned which means it equals nil
puts var.inspect # => nil
end
@andreychernih
andreychernih / child.rb
Created Oct 9, 2015
Why rails can't infer foreign key name automatically?
View child.rb
class Child < ActiveRecord::Base
belongs_to :parent # Child has parent_guid field
# ActiveModel::MissingAttributeError:
# can't write unknown attribute `parent_id`
end
@andreychernih
andreychernih / base.rb
Last active Sep 8, 2015
Interview test task
View base.rb
class Base
def initialize(attrs={})
# implement this
end
def self.find(id)
# implements this
end
def self.db
@andreychernih
andreychernih / spec_helper.rb
Created May 7, 2015
TeamCity hack for running specs with spork started from another process (i.e. from terminal)
View spec_helper.rb
# Teamcity hack
$LOAD_PATH.push '/Applications/RubyMine.app/Contents/rb/testing/patch/bdd'
$LOAD_PATH.push '/Applications/RubyMine.app/Contents/rb/testing/patch/common'
require 'teamcity/spec/runner/formatter/teamcity/formatter'
@andreychernih
andreychernih / Vagrantfile
Created Jan 8, 2015
Package plugins with vagrant
View Vagrantfile
needs_restart = false
plugins = {
'vagrant-aws' => '0.5.0',
'vagrant-s3auth' => '0.1.0',
'vagrant-bindfs' => '0.3.2',
}
plugins.each do |plugin, version|
unless Vagrant.has_plugin?(plugin)
system("vagrant plugin install #{plugin} --plugin-version #{version}") || exit!
needs_restart = true
@andreychernih
andreychernih / script.js
Created Nov 20, 2014
Delete all Jenkins jobs produced by "Build Per Branch"
View script.js
for(job in jenkins.model.Jenkins.theInstance.getProjects()) {
if (job.name != 'project-test-master' && job.name.indexOf('project-test') > -1) {
job.delete();
}
}
@andreychernih
andreychernih / Vagrantfile
Last active Aug 29, 2015
sample Vagrantfile which installs Ubuntu Trusty
View Vagrantfile
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] # faster network
vb.memory = 1024
vb.cpus = 2
end
You can’t perform that action at this time.