Skip to content

Instantly share code, notes, and snippets.

@caoilte
caoilte / gist:0071aaff3706abf35e28df073f83652a
Created November 15, 2021 13:20
terraform apply output
module.cloud-composer.google_composer_environment.composer: Creating...
module.cloud-composer.google_composer_environment.composer: Still creating... [10s elapsed]
module.cloud-composer.google_composer_environment.composer: Still creating... [20s elapsed]
module.cloud-composer.google_composer_environment.composer: Still creating... [30s elapsed]
module.cloud-composer.google_composer_environment.composer: Still creating... [40s elapsed]
module.cloud-composer.google_composer_environment.composer: Still creating... [50s elapsed]
module.cloud-composer.google_composer_environment.composer: Still creating... [1m0s elapsed]
module.cloud-composer.google_composer_environment.composer: Still creating... [1m10s elapsed]
module.cloud-composer.google_composer_environment.composer: Still creating... [1m20s elapsed]
module.cloud-composer.google_composer_environment.composer: Still creating... [1m30s elapsed]
@caoilte
caoilte / ExampleEncoderTest.scala
Last active May 18, 2017 09:44
unit testing HTTP4s encoders
package httpServices
import io.circe.{Encoder, Printer}
import org.http4s.circe.CirceInstances
import org.scalatest.{FlatSpec, Matchers}
import org.http4s.dsl._
class GistTest extends FlatSpec with Matchers {
case class TestObject(someValue: Int, someOptionalValue:Option[Int])
@caoilte
caoilte / ExampleEncoderTest.scala
Created May 18, 2017 09:06
unit testing HTTP4s encoders
package httpServices
import io.circe.Printer
import org.http4s.circe.CirceInstances
import org.scalatest.{FlatSpec, Matchers}
import io.circe.generic.auto._
import org.http4s.dsl._
class ExampleEncoderTest extends FlatSpec with Matchers {
{
"_embedded": {
"promotions": [{
"type": "url",
"contentfulName": "15 minute container",
"position": "primary",
"title": "Mark's First URL Promo",
"subtitle": "It's the first one I tell ya",
"_links": {
@caoilte
caoilte / QueueExample.scala
Last active June 13, 2016 13:48
scalaz-stream example of problem for Stack Overflow question
import java.util.concurrent.Executors
import scalaz.concurrent.{Strategy, Task}
import scalaz.stream._
import scalaz.stream.async.mutable.Queue
object Processes {
val source: Process[Task, String] = Process.emitAll(0 until 10).map(_.toString())
val slowProcessor1: Channel[Task, String, String] =
@caoilte
caoilte / InfiniteBatchProcessor.scala
Created June 10, 2016 08:52
Infinite Batch Processing Walking Skeleton using scalaz-stream
import java.util.concurrent.Executors
import scalaz.concurrent.{Strategy, Task}
import scalaz.stream._
import scalaz.stream.async.mutable.Queue
object MercuryPlayabilityUpdater {
implicit val DefaultStrategy: Strategy = Strategy.Executor(
Executors.newFixedThreadPool(10, Strategy.DefaultDaemonThreadFactory)
@caoilte
caoilte / latest_rpm_release_in_artifactory.sh
Created March 5, 2016 21:20
How to get the latest version of an RPM from an Artifactory Repository
echo 'items.find(
{
"repo":{"$eq":"<REPO_NAME>"},
"name":{"$match":"<RPM_NAME>*"}
}
).include("name", "@rpm.metadata.release").sort({"$desc" : ["name"]}).limit(1)' > aql.json
curl -X POST -Taql.json --user <USER>:<PASSWORD> "https://<ARTIFACTORY>/api/search/aql" | python -c "import json,sys;obj=json.load(sys.stdin);print obj['results'][0]['properties'][0]['value'];"
//import Foo._
object Foo {
case class /\(name: String)
case class Bar(name: String)
}
object Test {
@caoilte
caoilte / jaxb-in-scala-2_01.scala
Last active August 29, 2015 14:06
Bending JAXB to the will of Scala [2/2]
import scala.annotation.target.field
import javax.xml.bind.annotation._
import javax.xml.bind.annotation.adapters._
type xmlElement = XmlElement @field
type xmlTypeAdapter = XmlJavaTypeAdapter @field
/**
* NB As with the CustomOptionAdapter we've had to modify the type signature here,