Skip to content

Releases: xescugc/qid

v0.0.5

28 Jan 21:18
a4ad28f

Choose a tag to compare

What's Changed

  • qid: Refactor the logic for the resource_type.check by @xescugc in #117
  • Include Apache License 2.0 by @xescugc in #118
  • qid/config: Allow to specify an PP to be create on server start by @xescugc in #119
  • README: Fixed the path to the GIF by @xescugc in #120
  • qid/resource|restype: Rename 'Inputs' to 'Params' by @xescugc in #121
  • qid/view: Made the view not re-render all the view by @xescugc in #122

What's New

Breaking: resource_type.check

Now the resource_type.check does no longer read all the stdout and splits by \n but it reads the last line of output and expects it to be a JSON array with all the versions.

Also every version is now flatten and prefixed with $version_ when making it available on the ENV in resource_type.get.

Check the documentation for more information

Breaking: resource_type.params

Now what before was named inputs is now params and when accessing it via ENV are passed as $param_.

Full Changelog: v0.0.4...v0.0.5

v0.0.4

23 Jan 10:56
7101df9

Choose a tag to compare

What's Changed

  • qid/intex.tmpl: Change the fetch interval to 2s by @xescugc in #99
  • qid: Added Hooks to Job/Steps by @xescugc in #101
  • qid/runner: Added the entity 'runner' by @xescugc in #105
  • qid: Now all the intervals and periodic use CRON by @xescugc in #109
  • cmd: '--vars' no longer required by @xescugc in #110
  • qid/views: Added the 'check_interval' to the resource view by @xescugc in #111
  • qid: Added duration to Builds and Steps by @xescugc in #114

What's new

Breaking: Runner

Introduced new entity runner which is a way to specify in which context the commands run, by default there is the exec which will run on the host machine (as before), but you can define your own. The params (like the $image and $cmd) have to be documented and are up to each runner.

runner "docker" {
  run {
    path = "docker"
    args = [
      "run", "--rm",
      "-v","$WORKDIR:/workdir",
      "-w","/workdir",
      "$image",
      "$cmd"
    ]
  }
}

job "gen" {
  task "gen" {
    run "docker" {
      image = "golang:1.25.1"
      cmd = "make -C ${var.repo_name} gen"
    }
  }
}

Breaking: CRON

Added an internal resource_type cron that allows you to periodically trigger a job.

Also now the resource.check_interval is in CRON format instead of GO time.Duration. So instead of 5m is now @every 5m and you can also use date periodic with CRON syntax (more in docs)

resource "cron" "my_cron" {
  check_interval = "@every 5s"
  inputs {}
}

job "gen" {
  get "cron" "my_cron" {
    trigger = true
  }
  task "echo" {
    run "exec" {
      path = "echo"
      args = "'IN'"
    }
  }
}

New: Hooks

Now all Job Steps: get, task and the job itself have 3 hooks:

  • on_success: Runs if it success
  • on_failure: Runs if it fails
  • ensure: Always run
  on_success "exec" {
    path = "echo"
    args = [ 
      "job-s",
    ]
  }

Full Changelog: v0.0.3...v0.0.4

v0.0.3

31 Oct 11:57
23c8af8

Choose a tag to compare

Breaking changes

resource now needs to pass the inputs as a block like

resource "git" "my_repo" {
  inputs {
  	url = "https://github.com/xescugc/qid.git"
  }
}

Because resource now also have more configuration like the check_interval

What's Changed

  • qid/resource: Added the 'check_interval' and scoped 'inputs' by @xescugc in #88
  • qid/service: Added the 'TriggerPipelineResource' by @xescugc in #91
  • qid/tr/http/tmp/view: Polling calls no longer remove errors from view by @xescugc in #93
  • worker: Fixed issue of not pulling all the Job GET by @xescugc in #94
  • all: Added log level to logs by @xescugc in #95
  • worker: Do not trigger a Job if get.passed is not succeded by @xescugc in #97

Full Changelog: v0.0.2...v0.0.3

v0.0.2

25 Oct 00:57
dfcd8d8

Choose a tag to compare

What's Changed

  • README: Add the GIF by @xescugc in #66
  • qid: Fixed the UpdatePipeline by @xescugc in #69
  • qid/trnasport/http/handler: Make it return JSON when '.json' by @xescugc in #80
  • qid/.../layouts: Added 'Breadcrumbs' for navigation by @xescugc in #81
  • qid/transport/http/.../layouts: Made the Job Builds scrollable by @xescugc in #82
  • worker: Not fail if resource has no versions by @xescugc in #84
  • worker|cmd: Use XDG for Cache and data by @xescugc in #86

Full Changelog: v0.0.1...v0.0.2

v0.0.1

20 Oct 20:49

Choose a tag to compare

Relsease notes

First QID release, it still has a lot of things missing but it's a valid MVP so let's roll with this.

What's Changed

  • qid: Added 'mem' and 'nats' implementations by @xescugc in #2
  • qid: Changed to use HCL by @xescugc in #4
  • qid: Added ResourceVersion by @xescugc in #8
  • qid/transport/http: Added the web view by @xescugc in #17
  • qid/svc; Added UpdatePipeline by @xescugc in #27
  • qid: Added 'variables' to the Pipeline by @xescugc in #29
  • qid: Enabled SQLite and MemSQLite by @xescugc in #32
  • qid/config: Reorganized a bit the config by @xescugc in #33
  • qid: Made the 'resources' clicable on the UI by @xescugc in #37
  • qid/job: Now the 'Get' specifies the type of resource by @xescugc in #38
  • qid/service: Added link to the joining resources between 2 jobs by @xescugc in #40
  • cmd/server|worker: Added flag for the 'concurrency' of the workers by @xescugc in #41
  • qid: Allow to trigger a Job directly fron the UI by @xescugc in #42
  • qid: Changed all the UI to be BackboneJS by @xescugc in #52
  • qid/index.tmpl: Made the Builds live by @xescugc in #54
  • worker: Now the running jobs have a UUID folder as context by @xescugc in #55
  • qid: If job is not triggered by a resource dash the lines by @xescugc in #56
  • qid: Added the documentation by @xescugc in #59

New Contributors

Full Changelog: https://github.com/xescugc/qid/commits/v0.0.1