evgeniyworkbel / hexlet-basics

Interactive Programming Courses

Home Page:https://code-basics.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

github action status

hexlet-basics

Setup

Requirements

  • docker
  • docker compose V2
  • ruby >= 3.0.0
  • make

Steps

Add to /etc/hosts: 127.0.0.1 code-basics.test

Clone project

Some lsp servers are fully workable only when the root dir is the same inside and outside the container. That is why we set WORKDIR to /opt/projects/hexlet-basics. So, if it is possible, clone this project to that directory.

Run

make project-setup
make compose # run server
# open code-basics.test

make app-test # run tests

# load language
# make app-language-load L=php

make app-db-prepare # sometimes, when fixtures were changed

Production

Kube access

# make k8s-macos-setup or make k8s-ubuntu-setup
export DIGITALOCEAN_ACCESS_TOKEN=<your token>
make local-cluster-setup

Deploy

  • Create new tag via command:

    make next-tag
  • Wait notification about ready tag in Slack channel #sideprojects-code-auto or wait Github Actions

  • Change version in k8s/hb-app-chart/values.yaml and then:

    make -C k8s helm-upgrade-app

Hexlet Ltd. logo

This repository is created and maintained by the team and the community of Hexlet, an educational project. Read more about Hexlet.

See most active contributors on hexlet-friends.

About

Interactive Programming Courses

https://code-basics.com/


Languages

Language:Ruby 51.8%Language:Slim 25.2%Language:JavaScript 10.1%Language:HCL 3.9%Language:CSS 3.9%Language:Makefile 1.6%Language:HTML 1.2%Language:Jinja 1.0%Language:SCSS 0.6%Language:Dockerfile 0.5%Language:Shell 0.3%