Skip to content

Instantly share code, notes, and snippets.

View xSAVIKx's full-sized avatar
🇺🇦

Yurii Serhiichuk xSAVIKx

🇺🇦
View GitHub Profile
@xSAVIKx
xSAVIKx / sample-long-running-gcp-workflow.workflows.yaml
Last active January 9, 2023 11:28
Sample GCP Workflow with long-running architecture
main:
steps:
- createCallback:
call: events.create_callback_endpoint
args:
http_callback_method: "POST"
result: callbackDetails
- createHttpCallPayload:
assign:
- httpCallPayload: {}
@xSAVIKx
xSAVIKx / long-running-tasks-example.workflows.yaml
Created April 20, 2024 20:18
Tasks Runner e2e test GCP Workflows workflow
main:
params: [input]
steps:
- checkSleepTimeout:
switch:
- condition: ${"sleepTimeoutSeconds" in input}
assign:
- sleepTimeoutSeconds: ${int(input.sleepTimeoutSeconds)}
- condition: true
assign:
@xSAVIKx
xSAVIKx / update-gist.yml
Last active October 24, 2025 10:13
This gist is auto-updated using https://github.com/xSAVIKx/gist-uploader-action action
name: Update Gist
on:
release:
types:
- published
workflow_dispatch:
jobs:
update-gist:
@xSAVIKx
xSAVIKx / empty-file.txt
Created October 24, 2025 16:11
test-gist
almost empty
not so empty anymore.
yeah.
@xSAVIKx
xSAVIKx / index.ts
Last active October 25, 2025 17:35
GCP Cloud Workstations minimal setup with Pulumi, Typescript and Bun
import * as gcp from "@pulumi/gcp";
const region = "us-central1";
const gcpProvider = new gcp.Provider("gcpProvider", {
project: gcp.config.project,
region: region,
defaultLabels: { team: "devops" },
});
const enableServices = (services: string[]) => {
@xSAVIKx
xSAVIKx / index.ts
Last active November 22, 2025 09:13
GCP Cloud Workstations customizable setup with Pulumi, Typescript and Bun
import { dirname } from "node:path";
import { fileURLToPath } from "node:url";
import * as docker from "@pulumi/docker";
import * as gcp from "@pulumi/gcp";
import * as pulumi from "@pulumi/pulumi";
import { GoogleAuth } from "google-auth-library";
const __dirname = dirname(fileURLToPath(import.meta.url));
const region = "us-central1";