/notes-app-ionic-pro

This is sample application built with Ionic to demonstrate the tools & services provided by Ionic Pro.

Primary LanguageShellMIT LicenseMIT

Logo of the project

Notes App Ionic Pro

PRs Welcome MIT Licensed

Code in Ionic, build in Jenkins/Travis and test on AWS Device Farm! The source can be built via Jenkins or TravisCI (see Jenkinsfile & .travis.yml respectively), then tested on AWS Device Farm and uploaded to AWS S3.

Developing

Setting up Dev

When developing in Docker, we might also want to access AWS CLI and so we need to pass in the AWS credentials into our Docker container, as shown below:

# Make a copy of the environment file.
$ cp ./ci/env.sample ./ci/env.dev # You can make it `env.prod` or anything you want.

# Edit to add your own AWS credentials.
$ vim ./ci/env.dev

# Build the `ionic-ci-cd` image.
# ANDROID_API_LEVEL and ANDROID_BUILD_TOOLS_VERSION are optional.
$ docker build \
    --rm \
    -t ionic-ci-cd \
    --build-arg USER=$(id -un) \
    --build-arg GROUP=$(id -gn) \
    --build-arg UID=$(id -u) \
    --build-arg GID=$(id -g) \
    --build-arg ANDROID_API_LEVEL=26 \
    --build-arg ANDROID_BUILD_TOOLS_VERSION="26.0.2" \
    .

# Run the `ionic-jenkins-container` container, loading environment variables from the file `env.dev` into the container.
$ docker run \
    --rm \
    -it \
    --name=ionic-ci-cd-container \
    -v ${PWD}:$HOME/notes-app-ionic-pro \
    -w $HOME/notes-app-ionic-pro \
    --env-file ./ci/env.dev \
    ionic-ci-cd

The above should provide you with a Docker container within which you can begin developing.

Style guide

To check for style compliance within shell scripts, use shellcheck:

# Searches for all files that end with '.sh' and runs them through 'shellcheck'
$ find ./ci/ -type f -name '*.sh' -exec shellcheck {} \;

Modus Create

Modus Create is a digital product consultancy. We use a distributed team of the best talent in the world to offer a full suite of digital product design-build services; ranging from consumer facing apps, to digital migration, to agile development training, and business transformation.

Modus Create

Licensing

This project is MIT licensed.