Skip to content

Latest commit

Β 

History

History
74 lines (57 loc) Β· 3.75 KB

File metadata and controls

74 lines (57 loc) Β· 3.75 KB

Cevi Tools Webpage

This repo contains the content of the cevi.tools webpage. Cevi Tools is a collection of useful tools developed by the Cevi community.

Local Development (using Docker)

You can preview your changes locally using docker. Clone the Repo, install docker and run:

docker compose watch

Run bundler

export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
docker run --user $USER_ID:$GROUP_ID -it --rm -v "$PWD":/usr/src/app -w /usr/src/app ruby:3.2 sh -c "bundle config set --local path 'vendor/bundle' && bundle install"

Run jekyll build locally (using the default ruby image)

docker run --user $USER_ID:$GROUP_ID -it --rm -v "$PWD":/usr/src/app -w /usr/src/app ruby:3.2 sh -c "bundle config set --local path 'vendor/bundle' && bundle install && bundle exec jekyll build --trace"

Run jekyll build locally (same as github action)

docker run -it --rm -v "$PWD":/usr/src/app -w /usr/src/app jekyll/builder:latest jekyll build --trace

The preview page can be accessed on http://localhost:4000.

Local Development (with local ruby installation)

  1. Clone the repo to a local folder
  2. Install jekyll following the instructions on the official webpage.
  3. Install your bundles once by running the following commands:
$ bundle config set --local path 'vendor/bundle'
$ bundle install
  1. Serve the webpage locally by running the following command:
$ bundle exec jekyll serve

Deployment

Our webpage gets served directly from the gh-pages branch, which contains the plain HTML and CSS source. Those files are generated automatically upon committing to the main branch by a GitHub-Action script. Therefore, you do not want to commit directly to the gh-pages branch.

For every pull request (to the main branch), GitHub Actions will create a preview such that you can check your changes before releasing them by merging your changes into main.

                       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                       β”‚               β”‚   merge      β”‚               β”‚
    your code ───────► β”‚  pull request β”‚ ───────────► β”‚  main branch  β”‚
     changes           β”‚               β”‚              β”‚               β”‚
                       β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜              β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                               β”‚                              β”‚  
                               β”‚                              β”‚  generates sources
                               β”‚                              β”‚  automatically using
                               β–Ό                              β”‚  a GitHub-Action script
                                                              β”‚
                      generates a preview                     β–Ό
                        using Firebase                β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                                      β”‚               β”‚            β”‚              β”‚
                                                      β”‚    gh pages   β”‚  codebase  β”‚    webpage   β”‚
                                                      β”‚     branch    β”‚    for     β”‚  cevi.tools  β”‚
                                                      β”‚               β”‚ ◄────────► β”‚              β”‚
                                                      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜