Files
airflow/go-sdk/go.mod
T
Ash Berlin-Taylor fb37f959ed Initial version of the Golang Task SDK for Apache Airflow (#50964)
This introduces the Golang Task SDK, to allow Airflow tasks to be written in
Go.

At this stage the code is working well enough to be able to run tasks written
in Go (via a Celery broker of all things, because there was a ready made Go
client for it.) but it is not close to being GA yet.

Some of the known features gaps are documented in the README, we should
convert those into tickets

The code in this PR is a good start, but we need more tests (there are some
failing now as I don't think Go has TODO tests like pytest does) and the code
layout (pkg/ folder vs others etc) need some work (but in a future PR)

My goal here with this PR at this stage is two-fold:

1. Get this up for more eyes to check I haven't made any huge mistakes, and
2. Allow multiple people to work on this concurrently without making the PR
   even bigger.

As a result unless there are an glaring mistakes/things that need to be fixed
now I would like to merge this and we can improve on it over time.
2025-05-23 16:04:23 +01:00

63 lines
2.3 KiB
AMPL

module github.com/apache/airflow/go-sdk
go 1.24.1
require (
github.com/ivanpirog/coloredcobra v1.0.1
github.com/oapi-codegen/runtime v1.1.1
github.com/spf13/cobra v1.9.1
github.com/spf13/pflag v1.0.6
github.com/spf13/viper v1.20.1
github.com/stretchr/testify v1.10.0
github.com/swaggest/assertjson v1.9.0
resty.dev/v3 v3.0.0-beta.2
)
require (
github.com/bool64/shared v0.1.5 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
github.com/fsnotify/fsnotify v1.8.0 // indirect
github.com/go-kit/log v0.2.1 // indirect
github.com/go-logfmt/logfmt v0.6.0 // indirect
github.com/go-viper/mapstructure/v2 v2.2.1 // indirect
github.com/gomodule/redigo v1.8.9 // indirect
github.com/iancoleman/orderedmap v0.3.0 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/nxadm/tail v1.4.11 // indirect
github.com/pelletier/go-toml/v2 v2.2.3 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/rogpeppe/go-internal v1.12.0 // indirect
github.com/sagikazarmark/locafero v0.7.0 // indirect
github.com/sergi/go-diff v1.1.0 // indirect
github.com/sourcegraph/conc v0.3.0 // indirect
github.com/spf13/afero v1.12.0 // indirect
github.com/spf13/cast v1.7.1 // indirect
github.com/subosito/gotenv v1.6.0 // indirect
github.com/yudai/gojsondiff v1.0.0 // indirect
github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82 // indirect
go.uber.org/multierr v1.10.0 // indirect
golang.org/x/net v0.33.0 // indirect
golang.org/x/sync v0.10.0 // indirect
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
)
require (
github.com/MatusOllah/slogcolor v1.6.0
github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/google/uuid v1.6.0
github.com/jarcoal/httpmock v1.4.0
github.com/marselester/gopher-celery v1.0.0
github.com/mattn/go-colorable v0.1.14 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/redis/go-redis/v9 v9.7.3
golang.org/x/sys v0.32.0 // indirect
golang.org/x/text v0.21.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)
// https://github.com/ivanpirog/coloredcobra/pull/7
replace github.com/ivanpirog/coloredcobra => github.com/gabe565/coloredcobra v0.0.0-20240807081640-cadd85f208af