Skip to content

Instantly share code, notes, and snippets.

@jagedn
jagedn / build.gradle
Created November 6, 2024 15:40
prepare micronaut to run using cosmosdb emulator cert
tasks.findByName("run").doFirst{
def emulatorkey = "C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw=="
def emulator = "https://localhost:8081/_explorer/emulator.pem"
def sslContext = SSLContext.getInstance("SSL")
sslContext.init(null, (TrustManager[]) [
[
getAcceptedIssuers:{new X509Certificate[] {}},
checkServerTrusted:{ X509Certificate[] chain, String authType->},
checkClientTrusted:{X509Certificate[] chain, String authType->},
@jagedn
jagedn / AbstractCosmosDBSpec.java
Created November 4, 2024 16:05
Micronaut abstract test class for CosmosDB
abstract class AbstractCosmosDBSpec extends Specification implements TestPropertyProvider{
static CosmosDBEmulatorContainer emulator = new CosmosDBEmulatorContainer(
DockerImageName.parse("mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest"))
.withLogConsumer {
println new String(it.bytes) }
.waitingFor(
Wait.forSuccessfulCommand("curl --insecure https://127.0.0.1:8081/_explorer/emulator.pem || exit 1")
.withStartupTimeout(Duration.ofMinutes(2)))
.withReuse(true)
include {
fromRawParquet
} from 'plugin/nf-parquet'
channel.fromRawParquet( params.file )
| vie
@jagedn
jagedn / app.groovy
Created July 21, 2024 09:56
kMeans with Spark + Groovy
/*
* This Groovy source file was generated by the Gradle 'init' task.
*/
package cluster
import groovy.json.JsonOutput
import groovy.sql.Sql
import org.apache.spark.SparkConf
import org.apache.spark.ml.clustering.KMeans;
import org.apache.spark.ml.evaluation.ClusteringEvaluator
@jagedn
jagedn / Dockerfile
Created May 17, 2024 07:47
`DOCKER_BUILDKIT=1 docker build --target=runtime -t myapp .`
FROM python:3.10.12 as builder
RUN pip install poetry==1.4.2
ENV POETRY_NO_INTERACTION=1 \
POETRY_VIRTUALENVS_IN_PROJECT=1 \
POETRY_VIRTUALENVS_CREATE=1 \
POETRY_CACHE_DIR=/tmp/poetry_cache
WORKDIR /app
@jagedn
jagedn / index.js
Created May 8, 2024 10:14
un node para descargarse el borrador de la renta
const { Builder, By, Key, until} = require('selenium-webdriver');
const firefox = require("selenium-webdriver/firefox");
const fs = require('fs');
(async function referencia() {
var args = process.argv.slice(2);
var nif = args[0];
var fecha = args[1];
var importe = args[2];
// Gstring vs String
unString = 'Si va en comillas simples'
unGString = "si va en comillas dobles. Es parecido a una string peroo...."
// concatenar cadenas
println unString + " " + unGString
println unGString + ' y un ' + unString
@jagedn
jagedn / tuto1.groovy
Created April 11, 2024 09:37
definir cadenas simples
// igual que en java
String holaJava = "caracola";
// como en java pero sin punto y coma
String holaGroovy1 = "caracola"
// usando comillas simples
String holaGroovy2 = 'caracola'
// sin definir el tipo
@jagedn
jagedn / test.groovy
Created December 5, 2023 10:58
a simple Groovy Scritp with JMeterDSL
// requires groovy 3.0.11
// sdk install groovy 3.0.11
// sdk use groovy 3.0.11
@GrabConfig(systemClassLoader=true)
@Grab("us.abstracta.jmeter:jmeter-java-dsl:1.23.3")
import static us.abstracta.jmeter.javadsl.JmeterDsl.*
import org.apache.http.entity.ContentType
@jagedn
jagedn / example.groovy
Created November 30, 2023 16:14
GroovyScript + Datomic
// Dont know why but it requires java 17 fx
// sdk install 17.0.8.fx-zulu
// sdk use java 17.0.8.fx-zulu
@Grapes([
@Grab(group='org.scalamolecule', module='datomic-client-api-java-scala_2.13', version='1.0.3'),
@Grab(group='com.datomic', module='local', version='1.0.267'),
@Grab(group='com.cognitect', module='http-client', version='1.0.126'),
])