Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
9588d0f
update checkout version
nicotlm Jun 17, 2026
020c9e8
no CNAME
nicotlm Jun 17, 2026
dfa1e70
with docker
nicotlm Jun 17, 2026
78e275e
typo tag container
nicotlm Jun 17, 2026
5cf395d
with admin for container
nicotlm Jun 17, 2026
eff9005
no source
nicotlm Jun 17, 2026
3108894
fix permissions bot
nicotlm Jun 17, 2026
2a207d3
with concurrency
nicotlm Jun 17, 2026
c52adad
update render site
nicotlm Jun 17, 2026
d091de6
update concurrency
nicotlm Jun 17, 2026
d4453bf
update permissions to write comment
nicotlm Jun 17, 2026
952860a
with delete preview when closed
nicotlm Jun 17, 2026
5805076
triggered when PR is closed
nicotlm Jun 17, 2026
c69ee03
update comment to sticky comment - to avoid multiple comment
nicotlm Jun 17, 2026
31f64de
no mc and lib dependancies
nicotlm Jun 17, 2026
91dc9c5
update token permissions and rm checkout
nicotlm Jun 18, 2026
71d587a
fix
nicotlm Jun 18, 2026
4c5ba7e
fix sticky comment
nicotlm Jun 18, 2026
68601c0
with correct dir to delete previews
nicotlm Jun 18, 2026
81f62ab
typos comment previews
nicotlm Jun 18, 2026
302cf65
rm folder #592
nicotlm Jul 2, 2026
5c80760
rm dockerfile
nicotlm Jul 2, 2026
4b7a96d
rm unused init script
nicotlm Jul 2, 2026
9c3655a
rm unused fichiers plats
nicotlm Jul 2, 2026
924a69e
rm ref to docker
nicotlm Jul 2, 2026
2b4a44c
rm ref to docker
nicotlm Jul 2, 2026
f923384
rm ref docker doc
nicotlm Jul 2, 2026
738e175
rm folder #592
nicotlm Jul 2, 2026
c4e13f1
rm dockerfile
nicotlm Jul 2, 2026
57eb8ff
rm unused init script
nicotlm Jul 2, 2026
2b9addd
rm unused fichiers plats
nicotlm Jul 2, 2026
d6f39a0
rm ref to docker
nicotlm Jul 2, 2026
7bc5630
rm ref to docker
nicotlm Jul 2, 2026
478366f
rm ref docker doc
nicotlm Jul 2, 2026
02c9f69
Merge branch 'rm_docker' of https://github.com/nicotlm/utilitR into r…
nicotlm Jul 2, 2026
a96272b
update image to speed up
nicotlm Jul 2, 2026
29477d6
update version duckdb 1.5.4
nicotlm Jul 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 61 additions & 23 deletions .github/workflows/preview.yaml
Original file line number Diff line number Diff line change
@@ -1,32 +1,43 @@
on:
pull_request:
types:
- opened
- reopened
- synchronize # When the ref of the branch is updated (= commit to the branch to merge)
- closed # Including closed to remove preview when PR is closed.
branches: main

name: Quarto Preview

concurrency:
group: ${{ github.workflow }}-pr-${{ github.event.pull_request.number }} # Unique Quarto Preview per PR
cancel-in-progress: true

jobs:
build-preview:
if: github.event.action != 'closed' # If closing the PR, no publishing
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
contents: write # For pushing to gh-pages branch
pull-requests: write # For permissions to write comments on PRs
container:
image: inseefrlab/onyxia-r-datascience:r4.6.0
options: --user root # Force root user
steps:
- name: Check out repository
uses: actions/checkout@v4

- name: Install R
uses: r-lib/actions/setup-r@v2
with:
r-version: '4.6'
uses: actions/checkout@v6

- name: Install dependencies
run: |
sudo ./docker/dependencies.sh
curl -sSL https://raw.githubusercontent.com/A2-ai/rv/refs/heads/main/scripts/install.sh | bash
export PATH="~/.local/bin:$PATH"
source ~/.bashrc
export PATH="$HOME/.local/bin:$PATH" # Use $HOME instead of ~ for reliability
. ~/.bashrc # no source command for this container, so use . instead
rv sync

- name: Don't publish CNAME for preview
run: |
rm CNAME

- name: Set up Quarto environment
uses: quarto-dev/quarto-actions/setup@v2

Expand All @@ -37,19 +48,46 @@ jobs:
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./_site
publish_dir: ./_public
destination_dir: previews/pr-${{ github.event.pull_request.number }}
keep_files: true

- name: Comment PR with preview link
uses: actions/github-script@v7
- name: Comment PR (custom)
uses: marocchino/sticky-pull-request-comment@v3
with:
header: pr-preview
message: |
:rocket: View preview at <br> ${{ steps.deploy-preview.outputs.preview-url }} <br>
<h6>Built to branch <a href="${{ github.server_url }}/${{ github.repository }}/tree/gh-pages"> gh-pages </a> at ${{ steps.deploy-preview.outputs.action-start-time }}. <br> Preview will be ready when the <a href="${{ github.server_url }}/${{ github.repository }}/deployments">GitHub Pages deployment</a> is complete. <br> </h6>


# For this workflow only
delete-preview:
if: github.event.action == 'closed' # Only run when PR is closed
runs-on: ubuntu-latest
permissions:
contents: write # Required for gh-pages pushes
pull-requests: write # Required to comment PR
steps:
- name: Check out repository
uses: actions/checkout@v6
with:
fetch-depth: 0 # To enable full access to Git repo
ref: ${{ github.event.pull_request.head.ref }} # Reference of the commit to checkout to. To ensure it's the one of the PR
repository: ${{github.event.pull_request.head.repo.full_name}} # Reference to the branch to checkout to. Useful with PR from forks

- name: Remove preview
id: remove-preview
uses: rossjrw/pr-preview-action@v1.8.1
with:
action: remove
umbrella-dir: previews
token: ${{ secrets.GITHUB_TOKEN }}

- name: Comment PR that preview was removed
uses: marocchino/sticky-pull-request-comment@v3
with:
script: |
const pr_number = context.issue.number;
const preview_url = `https://${{ github.repository_owner }}.github.io/utilitR/previews/pr-${pr_number}/`;
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `🔍 Preview deployed! View it here: [PR #${pr_number} Preview](${preview_url})`
});
header: pr-preview
message: |
Preview removed because the pull request was closed.
${{ steps.remove-preview.outputs.action-start-time }}
1 change: 0 additions & 1 deletion .github/workflows/prod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ jobs:

- name: Install dependencies
run: |
sudo ./docker/dependencies.sh
curl -sSL https://raw.githubusercontent.com/A2-ai/rv/refs/heads/main/scripts/install.sh | bash
export PATH="~/.local/bin:$PATH"
source ~/.bashrc
Expand Down
45 changes: 0 additions & 45 deletions Dockerfile

This file was deleted.

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

<!-- badges: start -->
[![build-doc Actions Status](https://github.com/InseeFrLab/utilitR/workflows/Production%20de%20la%20documentation/badge.svg)](https://github.com/InseeFrLab/utilitR/actions)
[![Docker Pulls](https://img.shields.io/docker/pulls/inseefrlab/utilitr)](https://hub.docker.com/repository/docker/inseefrlab/utilitr/general)

[![SSPcloud](https://img.shields.io/badge/SSPcloud-Tester%20via%20SSP--cloud-informational?logo=R)](https://datalab.sspcloud.fr/launcher/ide/rstudio?name=rstudio%20utilitr&version=2.4.7&s3=default&init.personalInit=%C2%ABhttps%3A%2F%2Fraw.githubusercontent.com%2FInseeFrLab%2FutilitR%2Frefs%2Fheads%2Fmain%2Finit_utilitr.sh%C2%BB&kubernetes.role=%C2%ABadmin%C2%BB&git.repository=%C2%ABhttps%3A%2F%2Fgithub.com%2Finseefrlab%2Futilitr.git%C2%BB&networking.user.enabled=true&autoLaunch=false)
<!-- badges: end -->

Expand Down
76 changes: 0 additions & 76 deletions doc/extra_info.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,79 +18,3 @@ install.packages("remotes")
remotes::install_deps(dependencies = TRUE)
```

## :three: Utilisation d'un container

L'environnement de travail utilisé pour la compilation de la documentation est disponible sous la forme d'une image docker :

```
docker.io/inseefrlab/utilitr:latest
```

Cette image comprend toutes les dépendances système ainsi que les packages R nécessaires à la compilation du livre.
Il comprend également RStudio : voir la procédure ci-après pour exécuter cet environnement.

### Container temporaire

_Cette solution vous sera utile si vous souhaitez apporter une modification ponctuelle au projet._

### Utilisation en ligne avec Binder

:warning: Cette solution ne fonctionne plus à l'heure actuelle. Elle sera remise en état dès que possible

Afin d'assurer une parfaite reproductibilité, un environnement de travail est disponible en ligne en cliquant sur ce bouton
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gl/linogaliana%2FdocumentationR/binder?urlpath=rstudio).

Vous arrivez sur un environnement de travail RStudio avec tous les packages déjà installés. Cet environnement utilise le service [Binder](https://mybinder.org) : il peut être indisponible ponctuellement.

### Utilisation de docker sur un poste de travail

Si docker est installé sur votre machine, vous pouvez exécuter :

```bash
docker run --rm -p 8787:8787 -e PASSWORD=monpassword docker.io/inseefrlab/utilitr:latest
```

Vous pouvez remplacer `monpassword` par le mot de passe de votre choix.

Un serveur RStudio est alors disponible à l'url <http://127.0.0.1:8787>.
Pour vous connecter sur ce serveur, vous devez utiliser :

- nom d'utilisateur : `rstudio`
- mot de passe : le mot de passe choisi ci-dessus (`monpassword`) dans l'exemple.

Une fois connecté à RStudio, vous devez ensuite cloner le projet <https://github.com/InseeFrLab/utilitR.git>.
Si vous opérez des modifications, n'oubliez pas de transmettre vos modifications à l'aide de `git` grâce à un `push`. En effet, l'utilisation de l'option `--rm` détruira automatiquement votre container et son système de fichiers.

### Container permanent

Il vous est possible de créer un container permanent (attention, celui peut-être obsolète si de nouvelles dépendances sont ajoutées) ce qui vous permettra de ne pas perdre vos fichiers.

Créez un container appelé `mon_container` (vous pouvez changer ce nom) en mode détaché :

```bash
docker run --name mon_container -d -p 8787:8787 -e PASSWORD=monpassword docker.io/inseefrlab/utilitr:latest
```

Vous pouvez aussi attacher un volume à ce container grâce à l'option `-v` (sous linux, n'oubliez pas de rajouter l'option `-e USERID=$UID`). Par exemple, pour ajouter vos clés `ssh` :

```bash
docker run --name mon_container -d -p 8787:8787 -v $HOME/.ssh:/home/rstudio/.ssh -e USERID=$UID -e PASSWORD=monpassword docker.io/inseefrlab/utilitr:latest
```

Une fois ce container créé et lancé, vous pouvez vous connecter sur le serveur RStudio disponible à l'adresse <http://127.0.0.1:8787>. Pour se connecter, le nom d'utilisateur est `rstudio` et le mot de passe `monpassword`.

Dans RStudio, vous pouvez ensuite cloner le projet <https://github.com/InseeFrLab/utilitR.git> et travailler. N'oubliez pas de sauvegarder vos modifications.

Une fois que vous avez fini de travailler :

- dans RStudio, cliquez sur l'icone rouge située en haut à droite _"Quit the current R session"_.
- dans votre terminal, exécutez :
```bash
docker stop mon_container
```

Pour relancer plus tard votre serveur RStudio et retrouver vos fichiers, vous pouvez redémarrer votre container :

```bash
docker start mon_container
```
32 changes: 0 additions & 32 deletions docker/dependencies.sh

This file was deleted.

Loading