Compare commits
	
		
			6 Commits
		
	
	
		
			302e0b555c
			...
			master
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						
						
							
						
						c1b8c39e92
	
				 | 
					
					
						|||
| 3825565b16 | |||
| 48640dfa8b | |||
| 
						
						
							
						
						3acfd02bfb
	
				 | 
					
					
						|||
| 
						
						
							
						
						a3fe6ce6bd
	
				 | 
					
					
						|||
| 96965bde97 | 
@ -46,5 +46,5 @@ jobs:
 | 
				
			|||||||
        scp -o "StrictHostKeyChecking=no" -o "LogLevel=ERROR" -i key -r * ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:api/
 | 
					        scp -o "StrictHostKeyChecking=no" -o "LogLevel=ERROR" -i key -r * ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:api/
 | 
				
			||||||
    - name: restarting the backend 
 | 
					    - name: restarting the backend 
 | 
				
			||||||
      run: |
 | 
					      run: |
 | 
				
			||||||
        ssh -o "StrictHostKeyChecking=no" -o "LogLevel=ERROR" -i key ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} 'cd api/ && sed -i compose.yaml -e "s/8080:8080/4001:8080/" -e "s/8000:8080/4000:8080/" -e "23 i\    environment:\n      - VITE_CLYDE_MODE=prod" && docker-compose up --force-recreate --build -d'
 | 
					        ssh -o "StrictHostKeyChecking=no" -o "LogLevel=ERROR" -i key ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} 'cd api/ && sed -i compose.yaml -e "s/8080:8080/4001:8080/" -e "s/8000:8080/4000:8080/" && sed -e "8d" -i frontend/Dockerfile && docker-compose up --force-recreate --build -d'
 | 
				
			||||||
    - run: echo "The backend has been deployed. running at https://clyde.herisson.ovh/api"
 | 
					    - run: echo "The backend has been deployed. running at https://clyde.herisson.ovh/api"
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										14
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								README.md
									
									
									
									
									
								
							@ -1,5 +1,7 @@
 | 
				
			|||||||
# Clyde project
 | 
					# Clyde project
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Système de gestion d'universitée (dévelopé dans le cadre du cours de projet de génie logiciel de l'Umons 2024)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Signature
 | 
					## Signature
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Projet du groupe 01:
 | 
					Projet du groupe 01:
 | 
				
			||||||
@ -11,21 +13,28 @@ Projet du groupe 01:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## Running
 | 
					## Running
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**Attention**: Vous devez avoir installé docker-compose pour lancer ce projet.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Le projet peut être lancé grace à docker compose.
 | 
					Le projet peut être lancé grace à docker compose.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```sh
 | 
					```sh
 | 
				
			||||||
$ docker compose up 
 | 
					$ docker compose up 
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Dans le cas ou vous modifiers des fichiers, pour éviter que les images de docker soient recrées avec les changement
 | 
					Dans le cas ou vous modifiez des fichiers, pour éviter que les images de docker ne soient réutilisés sans les
 | 
				
			||||||
 | 
					changements.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```sh
 | 
					```sh
 | 
				
			||||||
$ docker compose up --force-recreate --build
 | 
					$ docker compose up --force-recreate --build
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					Vous pouvez alors accéder au frontend à l'adresse [http://localhost:5173](http://localhost:5173)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Une version finie du site construite automatiquement à l'aide de gitea actions tourne à l'adresse
 | 
				
			||||||
 | 
					[https://clyde.herisson.ovh/](https://clyde.herisson.ovh/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Dévelopement
 | 
					## Dévelopement
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Dans le cas ou vous êtes dans une phase de développement, il est plus simple d'utiliser gradle pour lancer le backend et frontend dans un mode de développement.
 | 
					Dans le cas ou vous êtes dans une phase de développement, il est plus simple d'utiliser gradle pour lancer le backend et frontend.
 | 
				
			||||||
**Attention**: Ce mode n'est pas fait pour être utilisé en production!
 | 
					**Attention**: Ce mode n'est pas fait pour être utilisé en production!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```sh
 | 
					```sh
 | 
				
			||||||
@ -38,4 +47,3 @@ Ceci requière également docker pour lancer une instance de postgresql pris en
 | 
				
			|||||||
Il est possible de se passer entièrement de docker en supprimant la dépendance dans le fichier `backend/build.gradle.kts`: ~~`developmentOnly("org.springframework.boot:spring-boot-docker-compose")`~~
 | 
					Il est possible de se passer entièrement de docker en supprimant la dépendance dans le fichier `backend/build.gradle.kts`: ~~`developmentOnly("org.springframework.boot:spring-boot-docker-compose")`~~
 | 
				
			||||||
Il est alors nécéssaire d'avoir une instance de postgresql tournant sur `localhost:5432` avec une table `clyde`, utilisateur: `devel` et password: `devel`
 | 
					Il est alors nécéssaire d'avoir une instance de postgresql tournant sur `localhost:5432` avec une table `clyde`, utilisateur: `devel` et password: `devel`
 | 
				
			||||||
(cette configuration peut également être changée dans le fichier resources/application.properties de spring)
 | 
					(cette configuration peut également être changée dans le fichier resources/application.properties de spring)
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -35,6 +35,14 @@ watch(
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
);
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					async function modified(){
 | 
				
			||||||
 | 
					  if (typeof props.researchList === 'undefined'){
 | 
				
			||||||
 | 
					    researchList.value = await fetchAllResearches()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  else {
 | 
				
			||||||
 | 
					    emit('modified')
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const openFilter = () => {
 | 
					const openFilter = () => {
 | 
				
			||||||
  isFilterOpened.value = true;
 | 
					  isFilterOpened.value = true;
 | 
				
			||||||
@ -112,7 +120,7 @@ const emit = defineEmits(["modified"]);
 | 
				
			|||||||
<template>
 | 
					<template>
 | 
				
			||||||
<div id="researches">
 | 
					<div id="researches">
 | 
				
			||||||
  <FilterComponent :isOpen="isFilterOpened" :allArticles="researchList" @modal-close="closeFilter" @submit="submitFilters"></FilterComponent>
 | 
					  <FilterComponent :isOpen="isFilterOpened" :allArticles="researchList" @modal-close="closeFilter" @submit="submitFilters"></FilterComponent>
 | 
				
			||||||
  <ArticleComponent :allResearcher="allResearcher" :article="articleToDisplay" :isOpen="isResearchOpened" :manage="props.manage" @modal-close="closeResearch" @modified="emit('modified')"></ArticleComponent>
 | 
					  <ArticleComponent :allResearcher="allResearcher" :article="articleToDisplay" :isOpen="isResearchOpened" :manage="props.manage" @modal-close="closeResearch" @modified="modified"></ArticleComponent>
 | 
				
			||||||
  <div id="search">
 | 
					  <div id="search">
 | 
				
			||||||
    <input v-if="!isResearcher" type="text" id="search-input" :placeholder="i18n('Search.Researches')"  v-model="input"/>
 | 
					    <input v-if="!isResearcher" type="text" id="search-input" :placeholder="i18n('Search.Researches')"  v-model="input"/>
 | 
				
			||||||
    <input v-else type="text" id="search-input" :placeholder="i18n('Search.Researchers')" v-model="input"/>
 | 
					    <input v-else type="text" id="search-input" :placeholder="i18n('Search.Researchers')" v-model="input"/>
 | 
				
			||||||
 | 
				
			|||||||
@ -73,6 +73,10 @@ function update(){
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					async function modifiedResearch(){
 | 
				
			||||||
 | 
					  researchList.value = await fetchResearches(researcher.value.id)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
</script>
 | 
					</script>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<template>
 | 
					<template>
 | 
				
			||||||
@ -111,7 +115,7 @@ function update(){
 | 
				
			|||||||
		  <CanvasJSChart :options="options" id=chart @chart-ref="c => chart = c "/>
 | 
							  <CanvasJSChart :options="options" id=chart @chart-ref="c => chart = c "/>
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
    <div id="researches" style="margin-top: -15px"><list-researches :researchList="researchList"></list-researches></div>
 | 
					    <div id="researches" style="margin-top: -15px"><list-researches :researchList="researchList" @modified="modifiedResearch"></list-researches></div>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</template>
 | 
					</template>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user