Skip to content

Instantly share code, notes, and snippets.

@ameersami
ameersami / Jenkinsfile
Last active October 30, 2020 05:25
Jenkinsfile for the ci cd repo
#!/bin/groovy
pipeline {
agent any
tools {
nodejs 'recent node'
}
stages {
stage('Prepare') {
steps {
script {
@ameersami
ameersami / docker-compose.yml
Created May 23, 2019 02:44
Docker-compose file for the react-boilerplate project
version: '3'
services:
react-app:
image: reactApp:latest
deploy:
restart_policy:
condition: "any"
delay: "0"
@ameersami
ameersami / setup.sh
Created May 22, 2019 02:54
setup script for the ci cd pipeline
mkdir portainer portainer/data
echo 'Create docker web network'
docker network create --scope=swarm web
echo 'Running chmod on acme.json'
chmod 600 ./traefik/acme.json
echo 'Starting services....'
docker stack deploy proxy --compose-file docker-compose.yml
@ameersami
ameersami / docker-compose.yml
Created May 22, 2019 02:35
docker compose file for the ci cd pipeline
version: '3'
services:
traefik:
image: traefik:1.7-alpine
restart: always
ports:
- 80:80
- 443:443
networks:
@ameersami
ameersami / traefik.toml
Created May 22, 2019 02:30
traefik configuration for the ci cd pipeline article
debug = false
logLevel = "ERROR"
defaultEntryPoints = ["https","http"]
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
@ameersami
ameersami / Dropdown.jsx
Created April 28, 2019 18:05
Dropdown Component
import React from 'react';
import DownShift from 'downshift';
import { StyledInput, StyledLabel, ItemContainer, Item } from './Dropdown.styled';
const items = [
{ value: '🍎 apple' },
{ value: '🍐 pear' },
{ value: '🍌 banana' },
{ value: '🍊 orange' },
@ameersami
ameersami / Dropdown.styled.jsx
Created April 28, 2019 18:03
Styled Dropdown Components
import styled from 'styled-components';
const StyledInput = styled.input`
border-radius: 6px;
border: 1px solid #bdbdbd;
box-sizing: border-box;
padding: 10px 5px;
transition: all 0.2s ease-in-out;
width: 100%;
@ameersami
ameersami / setupEnzyme.ts
Created April 8, 2019 02:44
React Boilerplate setupEnzyme file
import * as Enzyme from 'enzyme';
import * as Adapter from 'enzyme-adapter-react-16';
Enzyme.configure({
adapter: new Adapter()
});
@ameersami
ameersami / jest.config.json
Created April 8, 2019 02:35
React Boilerplate Jest Config
{
"roots": [
"<rootDir>/src"
],
"transform": {
"^.+\\.tsx?$": "ts-jest"
},
"testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.(ts|tsx)$",
"testPathIgnorePatterns": [
"./src/__tests__/setupEnzyme.ts"
@ameersami
ameersami / tsconfig.json
Created April 8, 2019 02:34
React Boilerplate TypeScript Config
{
"compilerOptions": {
"allowSyntheticDefaultImports": true,
"jsx": "react",
"module": "amd",
"noImplicitAny": true,
"outDir": "./dist/",
"preserveConstEnums": true,
"removeComments": true,
"sourceMap": true,