Skip to content

Instantly share code, notes, and snippets.

@jdlom
jdlom / rapidclient_prodige_api
Created January 26, 2022 08:08
test rapidclient prodige
#install.packages("rapidclient")
#devtools::install_github("bergant/rapiclient")
library("rapidclient")
library(tidyverse)
# api <- get_api(url = "https://www.geonormandie.fr/geonetwork/srv/v2/api-docs")
# api <- get_api(url = "https://catalogue.sigloire.fr/geonetwork/srv/v2/api-docs")
# api <- get_api(url = "http://onegeology-geonetwork.brgm.fr/geonetwork3/srv/v2/api-docs")
is.error <- function(x) inherits(x, "try-error")
@jdlom
jdlom / renv_admin.R
Created November 19, 2021 22:33
renv_admin.R
# renv
library(purrr)
library(tidyverse)
pkg <- jsonlite::read_json('renv.lock', simplifyVector = T)
pkg <- pkg$Packages
# dataframe of package
@jdlom
jdlom / pin_minio.R
Created November 4, 2021 16:47
pin_minio_sspcloud
library(magrittr)
library(pins)
board <- pins::board_s3(
bucket = "jdlomenede",
prefix = "my_board/",
versioned = TRUE,
access_key = Sys.getenv("AWS_ACCESS_KEY_ID"),
secret_access_key = Sys.getenv("AWS_SECRET_ACCESS_KEY"),
session_token = Sys.getenv("AWS_SESSION_TOKEN"),
@jdlom
jdlom / init_git_credential.sh
Last active October 1, 2021 08:12
sspcloud token rstudio
#!/bin/bash
# install github cli
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /usr/share/keyrings/githubcli-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
sudo apt update
sudo apt install gh
#configure git
env | grep "URL_GIT" | cut -d "=" -f2 > /home/rstudio/git.store
chown rstudio /home/rstudio/git.store
@jdlom
jdlom / save_restore_dependencies.sql
Created June 24, 2021 14:05 — forked from mateuszwenus/save_restore_dependencies.sql
PostgreSQL: How to handle table and view dependencies
create table deps_saved_ddl
(
deps_id serial primary key,
deps_view_schema varchar(255),
deps_view_name varchar(255),
deps_ddl_to_run text
);
create or replace function deps_save_and_drop_dependencies(p_view_schema varchar, p_view_name varchar) returns void as
$$
@jdlom
jdlom / ogr_fdw_wfs.sh
Last active June 21, 2021 16:11
ogr_fdw_wfs
#/bin/bash
# create sql dump with ogr_fdw on wfs server
export adresse=WFS:http://ws.carmen.developpement-durable.gouv.fr/WFS/8/nature?REQUEST=GetCapabilities
export ogr_fdw=/usr/lib/postgresql/12/bin/ogr_fdw_info
export GDAL_HTTP_PROXY=10.27.8.20:8080
function wfs_layers() {
cmd="$ogr_fdw -s $1"
for layer in `$cmd | awk 'f;/Layers/{f=1}'`
@jdlom
jdlom / retrieveInfoLayerBrowser.py
Last active May 19, 2021 20:39
Gist created by PyQGIS Console
def retrieveInfoLayerBrowser(self, index):
self.proxy_model = self.navigateurTreeView.model()
self.model = self.proxy_model.sourceModel()
item = self.model.dataItem(self.proxy_model.mapToSource(index))
if isinstance(item, QgsLayerItem):
comments = item.comments()
self.layer = QgsVectorLayer(item.uri(),
#continuer pour afficher les métadonnées et voir si on peut faire la même chose pour asgardmenu
self.layer = QgsVectorLayer(item.uri(), item.name(), 'postgres')
self.loadMetadata()
@jdlom
jdlom / get_uri_from_browser_panel.py
Last active May 20, 2021 08:13
Gist created by PyQGIS Console
#!python
# pyqgis script
# get uri from browser panel
navigateur = iface.mainWindow().findChild(QDockWidget,'Browser')
navigateurTreeView = navigateur.findChild(QTreeView)
idx = navigateurTreeView.currentIndex()
uri = None
proxy_model = navigateurTreeView.model()
#model = proxy_model.sourceModel()
model = iface.browserModel()
@jdlom
jdlom / fork_and_clone_parcours_r.sh
Created May 10, 2021 12:36
Fork et clone parcours-r
#!/bin/bash
gh auth login --with-token < token-gh.txt
gh repo list MTES-MCT -L 3000 |
grep parcours_r |
awk '{print $1}' |
xargs -n1 -I repository gh repo fork repository --clone --remote
@jdlom
jdlom / list_defaut_privileges.sql
Last active April 27, 2021 09:03
Lister les droits par défaut d'un schéma dans postgresql
CREATE SCHEMA IF NOT EXISTS admin;
CREATE OR REPLACE FUNCTION admin.list_default_privileges(
_schema_name text DEFAULT NULL::text,
_de text DEFAULT NULL::text,
_pour text DEFAULT NULL::text,
_privileges text DEFAULT NULL::text,
_objtype text DEFAULT 'r'::text)
RETURNS TABLE(r_schema_name text, r_objtype text, r_de text, r_pour text, r_privileges text, r_is_grantable boolean)
LANGUAGE 'plpgsql'