Skip to content
Snippets Groups Projects
Unverified Commit 8cc3ab31 authored by Hamza Remmal's avatar Hamza Remmal Committed by GitHub
Browse files

Merge branch 'master' into mb/behat

parents 53ff34ee ed5a2182
Branches mb/behat
No related tags found
1 merge request!6[Draft] Setup behat testing
Showing
with 498 additions and 10 deletions
name: Spring App tests
on:
push:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: set up java
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
cache: maven
- name: build and run the tests for the service
run: mvn -B clean package --file moodle-grading-service/pom.xml
- name: upload junit test report
uses: actions/upload-artifact@v3
with:
name: test-report
path: moodle-grading-service/target/surefire-reports
name: Build and Push Docker image for Moodle Grading Service
# Run this workflow every time a new commit on the main branch changes the moodle-grading-service directory
on:
push:
branches:
- master
paths:
- "moodle-grading-service/**"
- ".github/workflows/build-push.yml"
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v4
with:
context: ./moodle-grading-service
provenance: false
platforms: linux/amd64,linux/arm64
push: true
tags: |
ghcr.io/${{ github.repository }}/moodle-grading-service:latest
ghcr.io/${{ github.repository }}/moodle-grading-service:${{ github.sha }}
name: Deploy to Minikube
on:
pull_request:
types: [review_requested]
branches:
- master
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Add entry to /etc/hosts
run: |
echo "127.0.0.1 moodle" | sudo tee -a /etc/hosts
- name: Start minikube
uses: medyagh/setup-minikube@master
id: minikube
with:
driver: docker
mount-path: "${{ github.GITHUB_WORKSPACE }}:/repo"
- name: Start tunnel
run: |
minikube tunnel &
- name: Login to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build image
run: |
eval $(minikube docker-env)
docker build -t ghcr.io/hamzaremmal/moodle-autograde/moodle-grading-service:latest moodle-grading-service
- name: Deploy manifests
run: |
kubectl config set-context minikube --namespace=cs107
kubectl apply -k k8s-overlays/local
- name: Wait for deployment to complete and grading service to be available
run: |
kubectl rollout status deployment/grading-service
sleep 100
kubectl get service grading-service-tcp
- name: Ping grading service
run: |
WEB_SERVICE_URL=$(kubectl get service grading-service-tcp -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo "WEB_SERVICE_URL=$WEB_SERVICE_URL"
response=$(curl -s http://$WEB_SERVICE_URL:8082/api/v1/ping/no-auth)
if [[ "$response" != *"Hello from Spring boot"* ]]; then
echo "Unexpected response: $response"
exit 1
fi
/data/
#K8S configuration
kubeconfig
#Local dev variables
**.prod.env
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<ScalaCodeStyleSettings>
<option name="MULTILINE_STRING_CLOSING_QUOTES_ON_NEW_LINE" value="true" />
</ScalaCodeStyleSettings>
</code_scheme>
</component>
\ No newline at end of file
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
</state>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile default="true" name="Default" enabled="true" />
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="moodle-grading-service" />
</profile>
</annotationProcessing>
</component>
<component name="JavacSettings">
<option name="ADDITIONAL_OPTIONS_OVERRIDE">
<module name="moodle-grading-service" options="-parameters" />
</option>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
<data-source source="LOCAL" name="moodle-dev" uuid="55f0af50-0db1-4bef-8422-991545d60c56">
<driver-ref>mysql.8</driver-ref>
<synchronize>true</synchronize>
<jdbc-driver>com.mysql.cj.jdbc.Driver</jdbc-driver>
<jdbc-url>jdbc:mysql://localhost:3305/moodle</jdbc-url>
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/moodle-grading-service/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/moodle-grading-service/src/main/resources" charset="UTF-8" />
</component>
</project>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="IncorrectHttpHeaderInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="customHeaders">
<set>
<option value="API-KEY" />
</set>
</option>
</inspection_tool>
<inspection_tool class="JSHint" enabled="true" level="ERROR" enabled_by_default="true" />
<inspection_tool class="Stylelint" enabled="true" level="ERROR" enabled_by_default="true" />
</profile>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="central" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JSHintConfiguration" version="2.13.6" use-config-file="true" use-custom-config-file="true" custom-config-file-path="$PROJECT_DIR$/moodle/.jshintrc">
<option bitwise="true" />
<option browser="true" />
<option curly="true" />
<option eqeqeq="true" />
<option forin="true" />
<option maxerr="50" />
<option noarg="true" />
<option noempty="true" />
<option nonew="true" />
<option strict="true" />
<option undef="true" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/moodle-grading-service/pom.xml" />
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/moodle-autograde.iml" filepath="$PROJECT_DIR$/.idea/moodle-autograde.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/moodle/admin/presets/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/admin/roles/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/admin/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/analytics/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/auth/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/availability/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/backup/controller/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/backup/converter/moodle1/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/backup/moodle2/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/backup/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/backup/util" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/badges/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/blocks/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/blog/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/cache/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/calendar/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/cohort/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/comment/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/competency/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/completion/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/contentbank/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/course/format/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/course/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/customfield/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/enrol/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/favourites/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/files/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/filter/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/grade/grading/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/grade/import/csv/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/grade/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/group/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/h5p/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/iplookup/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/behat/extension" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/ddl/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/dml/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/editor/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/external/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/filebrowser/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/filestorage/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/form/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/grade/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/maxmind/MaxMind/src/MaxMind/Db" isTestSource="false" packagePrefix="MaxMind\Db\" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/maxmind/MaxMind/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/maxmind/MaxMind/tests/MaxMind/Db/Test/Reader" isTestSource="true" packagePrefix="MaxMind\Db\Test\Reader\" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/php-jwt/src" isTestSource="false" packagePrefix="Firebase\JWT\" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/php-jwt/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/phpunit/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/table/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/testing" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/userkey/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/lib/xapi/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/login/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/message/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/mnet/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/my/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/notes/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/payment/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/plagiarism/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/portfolio/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/privacy/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/question/engine/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/question/engine/upgrade/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/question/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/question/type/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/rating/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/reportbuilder/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/repository/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/rss/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/search/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/tag/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/user/tests" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/moodle/webservice/tests" isTestSource="true" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="PhpProjectSharedConfiguration" php_language_level="7.4">
<option name="suggestChangeDefaultLanguageLevel" value="false" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="PHPUnit">
<option name="directories">
<list>
<option value="$PROJECT_DIR$/moodle/lib/php-jwt/tests" />
<option value="$PROJECT_DIR$/moodle/lib/maxmind/MaxMind/tests" />
<option value="$PROJECT_DIR$/moodle/lib/phpunit/tests" />
<option value="$PROJECT_DIR$/moodle/lib/testing" />
<option value="$PROJECT_DIR$/moodle/lib/ddl/tests" />
<option value="$PROJECT_DIR$/moodle/lib/dml/tests" />
<option value="$PROJECT_DIR$/moodle/lib/tests" />
<option value="$PROJECT_DIR$/moodle/favourites/tests" />
<option value="$PROJECT_DIR$/moodle/lib/form/tests" />
<option value="$PROJECT_DIR$/moodle/lib/filestorage/tests" />
<option value="$PROJECT_DIR$/moodle/lib/filebrowser/tests" />
<option value="$PROJECT_DIR$/moodle/files/tests" />
<option value="$PROJECT_DIR$/moodle/filter/tests" />
<option value="$PROJECT_DIR$/moodle/admin/roles/tests" />
<option value="$PROJECT_DIR$/moodle/cohort/tests" />
<option value="$PROJECT_DIR$/moodle/lib/grade/tests" />
<option value="$PROJECT_DIR$/moodle/grade/tests" />
<option value="$PROJECT_DIR$/moodle/grade/grading/tests" />
<option value="$PROJECT_DIR$/moodle/grade/import/csv/tests" />
<option value="$PROJECT_DIR$/moodle/analytics/tests" />
<option value="$PROJECT_DIR$/moodle/availability/tests" />
<option value="$PROJECT_DIR$/moodle/backup/controller/tests" />
<option value="$PROJECT_DIR$/moodle/backup/converter/moodle1/tests" />
<option value="$PROJECT_DIR$/moodle/backup/moodle2/tests" />
<option value="$PROJECT_DIR$/moodle/backup/tests" />
<option value="$PROJECT_DIR$/moodle/backup/util" />
<option value="$PROJECT_DIR$/moodle/badges/tests" />
<option value="$PROJECT_DIR$/moodle/blog/tests" />
<option value="$PROJECT_DIR$/moodle/customfield/tests" />
<option value="$PROJECT_DIR$/moodle/iplookup/tests" />
<option value="$PROJECT_DIR$/moodle/course/tests" />
<option value="$PROJECT_DIR$/moodle/course/format/tests" />
<option value="$PROJECT_DIR$/moodle/privacy/tests" />
<option value="$PROJECT_DIR$/moodle/question/engine/tests" />
<option value="$PROJECT_DIR$/moodle/question/tests" />
<option value="$PROJECT_DIR$/moodle/question/type/tests" />
<option value="$PROJECT_DIR$/moodle/question/engine/upgrade/tests" />
<option value="$PROJECT_DIR$/moodle/cache/tests" />
<option value="$PROJECT_DIR$/moodle/calendar/tests" />
<option value="$PROJECT_DIR$/moodle/enrol/tests" />
<option value="$PROJECT_DIR$/moodle/group/tests" />
<option value="$PROJECT_DIR$/moodle/lib/external/tests" />
<option value="$PROJECT_DIR$/moodle/message/tests" />
<option value="$PROJECT_DIR$/moodle/notes/tests" />
<option value="$PROJECT_DIR$/moodle/tag/tests" />
<option value="$PROJECT_DIR$/moodle/rating/tests" />
<option value="$PROJECT_DIR$/moodle/repository/tests" />
<option value="$PROJECT_DIR$/moodle/lib/userkey/tests" />
<option value="$PROJECT_DIR$/moodle/user/tests" />
<option value="$PROJECT_DIR$/moodle/webservice/tests" />
<option value="$PROJECT_DIR$/moodle/mnet/tests" />
<option value="$PROJECT_DIR$/moodle/completion/tests" />
<option value="$PROJECT_DIR$/moodle/comment/tests" />
<option value="$PROJECT_DIR$/moodle/search/tests" />
<option value="$PROJECT_DIR$/moodle/competency/tests" />
<option value="$PROJECT_DIR$/moodle/my/tests" />
<option value="$PROJECT_DIR$/moodle/auth/tests" />
<option value="$PROJECT_DIR$/moodle/blocks/tests" />
<option value="$PROJECT_DIR$/moodle/login/tests" />
<option value="$PROJECT_DIR$/moodle/plagiarism/tests" />
<option value="$PROJECT_DIR$/moodle/portfolio/tests" />
<option value="$PROJECT_DIR$/moodle/lib/editor/tests" />
<option value="$PROJECT_DIR$/moodle/rss/tests" />
<option value="$PROJECT_DIR$/moodle/lib/table/tests" />
<option value="$PROJECT_DIR$/moodle/h5p/tests" />
<option value="$PROJECT_DIR$/moodle/lib/xapi/tests" />
<option value="$PROJECT_DIR$/moodle/contentbank/tests" />
<option value="$PROJECT_DIR$/moodle/payment/tests" />
<option value="$PROJECT_DIR$/moodle/reportbuilder/tests" />
<option value="$PROJECT_DIR$/moodle/admin/presets/tests" />
<option value="$PROJECT_DIR$/moodle/admin/tests" />
</list>
</option>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
<mapping directory="$PROJECT_DIR$/moodle" vcs="Git" />
</component>
</project>
\ No newline at end of file
<div align=center>
<h1>Moodle Dev Environment</h1>
<h1>Moodle Autograde plugin</h1>
</div>
> ⚠️ The following readme is yet to be completed. For now, it contains basic information about the repository.
## Set up locally
- Install *Docker* and *Docker Compose*
- Install [_minikube_](https://minikube.sigs.k8s.io/docs/start/) and [_kubectl_](https://kubernetes.io/docs/tasks/tools/) on your machine.
- clone the repository using the following command:
```console
git clone --recursive git@github.com:hamzaremmal/moodle-dev-env.git
git clone --recursive git@github.com:hamzaremmal/moodle-autograde.git
```
## Test your environment
- Start everything with one command :
- Start minikube with the following command:
```console
docker compose up --build
minikube start --driver=docker --mount --mount-string="$(pwd):/repo"
```
_This will also switch your kubectl context to minikube_
- Build the grading service image with the following commands:
- _Switch to minikube docker environment_
```console
eval $(minikube docker-env)
```
- _Build the image_
```console
docker build -t ghcr.io/hamzaremmal/moodle-autograde/moodle-grading-service:latest moodle-grading-service/
```
- Configure the dotenv file `k8s-base/grading-service-variables.env` with the following content:
```
API_KEY= <Add the autograde service API-KEY>
MOODLE_BASE_URL= <Add the moodle base url, `http://moodle:80` if you are using the local environment>
MOODLE_AUTOGRADE_TOKEN= <Add the autograde moodle token>
GRADING_SERVICE_NAME= <Add the name with which the grading-service is deployed, by default it is `grading-service-tcp`>
```
- Deploy the environment with the following command:
```console
kubectl apply -k k8s-overlays/local
```
- Kill everything with one command:
```console
docker compose down
kubectl delete -k k8s-overlays/local
```
- Access moodle via http://localhost:8080
- Ping web service with http://localhost:8082/api/v1/ping
> ℹ️ When accessing Moodle for the first time, you will need to install it. This step is pretty simple as all the links with the database are already configured (See config.php ;-) )
- To access the services, you will need to:
- Add the following lines to your `/etc/hosts` file:
```
localhost moodle
```
- Start a new terminal session and run :
```console
minikube tunnel
```
_This will ask for your password because it configures network routing on your machine._
- Access Moodle via http://moodle:80
- Ping the grading service with http://localhost:8082/api/v1/ping
> ℹ️ When accessing Moodle for the first time, you will need to install it. This step is pretty simple as all the links with the database are already configured (See config.php ;-) )
## Support
TODO HR : Create an email address in https://groups.epfl.ch
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment