diff --git a/.github/workflows/registry-updates.yaml b/.github/workflows/registry-updates.yaml index 54b53fdf..524d2d7c 100644 --- a/.github/workflows/registry-updates.yaml +++ b/.github/workflows/registry-updates.yaml @@ -47,22 +47,12 @@ jobs: with: go-version: 1.21.x - - name: Cache Go modules - uses: actions/cache@v4 - with: - path: | - ~/go/pkg/mod - ~/.cache/go-build - key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} - restore-keys: | - ${{ runner.os }}-go- - - name: Run registry automation program env: CHANGED_FILES_PATH: "changed_files.json" PUBLICATION_ENV: "staging" CONNECTOR_REGISTRY_GQL_URL: ${{ secrets.CONNECTOR_REGISTRY_GQL_URL }} - GCP_BUCKET_NAME: dev-connector-platform-registry + GCP_BUCKET_NAME: ${{ secrets.GCP_BUCKET_NAME }} GCP_SERVICE_ACCOUNT_DETAILS: ${{ secrets.GCP_SERVICE_ACCOUNT_DETAILS }} CONNECTOR_PUBLICATION_KEY: ${{ secrets.CONNECTOR_PUBLICATION_KEY }} run: | diff --git a/registry-automation/cmd/ci.go b/registry-automation/cmd/ci.go index 34af893f..ef6e8263 100644 --- a/registry-automation/cmd/ci.go +++ b/registry-automation/cmd/ci.go @@ -174,6 +174,7 @@ func processChangedFiles(changedFiles ChangedFiles) (NewConnectorVersions, Modif files := append(changedFiles.Added, changedFiles.Modified...) for _, file := range files { + // Check if the file is a connector version package if connectorVersionPackageRegex.MatchString(file) { @@ -236,6 +237,7 @@ func processChangedFiles(changedFiles ChangedFiles) (NewConnectorVersions, Modif } return newlyAddedConnectorVersions, modifiedLogos, modifiedReadmes + } // runCI is the main function that runs the CI workflow @@ -277,8 +279,7 @@ func runCI(cmd *cobra.Command, args []string) { return } else { if len(newlyAddedConnectorVersions) > 0 { - // TODO(KC): Uncomment the below line. - //processNewlyAddedConnectorVersions(client, newlyAddedConnectorVersions) + processNewlyAddedConnectorVersions(client, newlyAddedConnectorVersions) } if len(modifiedReadmes) > 0 { @@ -417,6 +418,7 @@ func processNewlyAddedConnectorVersions(client *storage.Client, newlyAddedConnec } } fmt.Println("Successfully added connector versions to the registry.") + } func cleanupUploadedConnectorVersions(client *storage.Client, connectorVersions []ConnectorVersion) error { @@ -498,9 +500,12 @@ func uploadConnectorVersionDefinition(client *storage.Client, connectorNamespace // connector-definition.yaml present in the .hasura-connector folder. func getConnectorVersionMetadata(tgzUrl string, connector Connector, connectorVersion string) (map[string]interface{}, string, error) { var connectorVersionMetadata map[string]interface{} - tgzPath := getTempFilePath("extracted_tgz") + tgzPath, err := getTempFilePath("extracted_tgz") + if err != nil { + return connectorVersionMetadata, "", fmt.Errorf("failed to get the temp file path: %v", err) + } + err = downloadFile(tgzUrl, tgzPath, map[string]string{}) - err := downloadFile(tgzUrl, tgzPath, map[string]string{}) if err != nil { return connectorVersionMetadata, "", fmt.Errorf("failed to download the connector version metadata file from the URL: %v - err: %v", tgzUrl, err) } @@ -646,6 +651,15 @@ func buildRegistryPayload( return connectorVersion, fmt.Errorf("Inserting a new connector is not supported yet") } + var connectorVersionType string + + if connectorVersionPackagingType == PrebuiltDockerImage { + // Note: The connector version type is set to `PreBuiltDockerImage` if the connector version is of type `PrebuiltDockerImage`, this is a HACK because this value might be removed in the future and we might not even need to insert new connector versions in the `hub_registry_connector_version` table. + connectorVersionType = "PreBuiltDockerImage" + } else { + connectorVersionType = ManagedDockerBuild + } + connectorVersion = ConnectorVersion{ Namespace: connectorNamespace, Name: connectorName, @@ -653,7 +667,7 @@ func buildRegistryPayload( Image: &connectorVersionDockerImage, PackageDefinitionURL: uploadedConnectorDefinitionTgzUrl, IsMultitenant: connectorInfo.HubRegistryConnector[0].MultitenantConnector != nil, - Type: connectorVersionPackagingType, + Type: connectorVersionType, } return connectorVersion, nil diff --git a/registry-automation/cmd/utils.go b/registry-automation/cmd/utils.go index c7cb7ca9..45af32a3 100644 --- a/registry-automation/cmd/utils.go +++ b/registry-automation/cmd/utils.go @@ -4,11 +4,9 @@ import ( "encoding/json" "fmt" "io" - "math/rand" "net/http" "os" "os/exec" - "path/filepath" ) func generateGCPObjectName(namespace, connectorName, version string) string { @@ -82,19 +80,9 @@ func readFile(location string) ([]byte, error) { return fileBytes, nil } -const letterBytes = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" - -// generateRandomFileName generates a random file name based on the current time. -func generateRandomFileName() string { - b := make([]byte, 10) - for i := range b { - b[i] = letterBytes[rand.Intn(len(letterBytes))] - } - return string(b) + ".tar.gz" -} - // getTempFilePath generates a random file name in the specified directory. -func getTempFilePath(directory string) string { +func getTempFilePath(directory string) (string, error) { + // Ensure the directory exists err := os.MkdirAll(directory, os.ModePerm) if err != nil { @@ -102,19 +90,14 @@ func getTempFilePath(directory string) string { } // Generate a random file name - fileName := generateRandomFileName() - - // Create the file path - filePath := filepath.Join(directory, fileName) - // Check if the file already exists - _, err = os.Stat(filePath) - if !os.IsNotExist(err) { - // File exists, generate a new name - fileName = generateRandomFileName() - filePath = filepath.Join(directory, fileName) + tempFile, err := os.CreateTemp(directory, "connector-*.tar.gz") + if err != nil { + return "", fmt.Errorf("error creating temp file: %v", err) } - return filePath + defer tempFile.Close() + + return tempFile.Name(), nil } diff --git a/registry-automation/go.mod b/registry-automation/go.mod index 1ab9dea7..e2eca410 100644 --- a/registry-automation/go.mod +++ b/registry-automation/go.mod @@ -2,12 +2,15 @@ module github.com/hasura/ndc-hub/registry-automation go 1.21.4 -require github.com/spf13/cobra v1.8.0 +require ( + github.com/cloudinary/cloudinary-go/v2 v2.8.0 + github.com/spf13/cobra v1.8.0 +) require ( - github.com/cloudinary/cloudinary-go/v2 v2.8.0 // indirect github.com/creasty/defaults v1.7.0 // indirect github.com/gorilla/schema v1.4.1 // indirect + github.com/matryer/is v1.4.1 // indirect ) require ( @@ -16,26 +19,20 @@ require ( cloud.google.com/go/auth/oauth2adapt v0.2.3 // indirect cloud.google.com/go/compute/metadata v0.5.0 // indirect cloud.google.com/go/iam v1.1.11 // indirect - cloud.google.com/go/storage v1.43.0 // indirect - github.com/andybalholm/brotli v1.0.1 // indirect + cloud.google.com/go/storage v1.43.0 github.com/felixge/httpsnoop v1.0.4 // indirect github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.4 // indirect - github.com/golang/snappy v0.0.4 // indirect github.com/google/s2a-go v0.1.7 // indirect github.com/google/uuid v1.6.0 // indirect github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect github.com/googleapis/gax-go/v2 v2.12.5 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect - github.com/klauspost/pgzip v1.2.5 // indirect - github.com/machinebox/graphql v0.2.2 // indirect - github.com/nwaples/rardecode v1.1.0 // indirect + github.com/machinebox/graphql v0.2.2 github.com/pkg/errors v0.9.1 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/ulikunitz/xz v0.5.9 // indirect - github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect @@ -49,7 +46,7 @@ require ( golang.org/x/sys v0.22.0 // indirect golang.org/x/text v0.16.0 // indirect golang.org/x/time v0.5.0 // indirect - google.golang.org/api v0.188.0 // indirect + google.golang.org/api v0.188.0 google.golang.org/genproto v0.0.0-20240711142825-46eb208f015d // indirect google.golang.org/genproto/googleapis/api v0.0.0-20240711142825-46eb208f015d // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240711142825-46eb208f015d // indirect diff --git a/registry-automation/go.sum b/registry-automation/go.sum index dc678a9f..c06e0b27 100644 --- a/registry-automation/go.sum +++ b/registry-automation/go.sum @@ -9,11 +9,11 @@ cloud.google.com/go/compute/metadata v0.5.0 h1:Zr0eK8JbFv6+Wi4ilXAR8FJ3wyNdpxHKJ cloud.google.com/go/compute/metadata v0.5.0/go.mod h1:aHnloV2TPI38yx4s9+wAZhHykWvVCfu7hQbF+9CWoiY= cloud.google.com/go/iam v1.1.11 h1:0mQ8UKSfdHLut6pH9FM3bI55KWR46ketn0PuXleDyxw= cloud.google.com/go/iam v1.1.11/go.mod h1:biXoiLWYIKntto2joP+62sd9uW5EpkZmKIvfNcTWlnQ= +cloud.google.com/go/longrunning v0.5.9 h1:haH9pAuXdPAMqHvzX0zlWQigXT7B0+CL4/2nXXdBo5k= +cloud.google.com/go/longrunning v0.5.9/go.mod h1:HD+0l9/OOW0za6UWdKJtXoFAX/BGg/3Wj8p10NeWF7c= cloud.google.com/go/storage v1.43.0 h1:CcxnSohZwizt4LCzQHWvBf1/kvtHUn7gk9QERXPyXFs= cloud.google.com/go/storage v1.43.0/go.mod h1:ajvxEa7WmZS1PxvKRq4bq0tFT3vMd502JwstCcYv0Q0= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/andybalholm/brotli v1.0.1 h1:KqhlKozYbRtJvsPrrEeXcO+N2l6NYT5A2QAFmSULpEc= -github.com/andybalholm/brotli v1.0.1/go.mod h1:loMXtMfwqflxFJPmdbJO0a3KNoPuLBgiu3qAvBg8x/Y= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cloudinary/cloudinary-go/v2 v2.8.0 h1:6o2mL5Obm92Q0TuX6yXfdpXSImbsYVYlOPOnpwjfobo= @@ -23,10 +23,8 @@ github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46t github.com/creasty/defaults v1.7.0 h1:eNdqZvc5B509z18lD8yc212CAqJNvfT1Jq6L8WowdBA= github.com/creasty/defaults v1.7.0/go.mod h1:iGzKe6pbEHnpMPtfDXZEr0NVxWnPTjb1bbDy08fPzYM= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/dsnet/compress v0.0.2-0.20210315054119-f66993602bf5 h1:iFaUwBSo5Svw6L7HYpRu/0lE3e0BaElwnNO1qkNQxBY= -github.com/dsnet/compress v0.0.2-0.20210315054119-f66993602bf5/go.mod h1:qssHWj60/X5sZFNxpG4HBPDHVqxNm4DfnCKgrbZOT+s= -github.com/dsnet/golib v0.0.0-20171103203638-1ea166775780/go.mod h1:Lj+Z9rebOhdfkVLjJ8T6VcRQv3SXugXy999NBtR9aFY= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= @@ -54,17 +52,16 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= -github.com/golang/snappy v0.0.2 h1:aeE13tS0IiQgFjYdoL8qN3K1N2bXXtI6Vi51/y7BpMw= -github.com/golang/snappy v0.0.2/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= -github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc= +github.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0= github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o= github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -78,26 +75,13 @@ github.com/gorilla/schema v1.4.1 h1:jUg5hUjCSDZpNGLuXQOgIWGdlgrIdYvgQ0wZtdK1M3E= github.com/gorilla/schema v1.4.1/go.mod h1:Dg5SSm5PV60mhF2NFaTV1xuYYj8tV8NOPRo4FggUMnM= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= -github.com/klauspost/compress v1.4.1/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A= -github.com/klauspost/compress v1.11.4 h1:kz40R/YWls3iqT9zX9AHN3WoVsrAWVyui5sxuLqiXqU= -github.com/klauspost/compress v1.11.4/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= -github.com/klauspost/cpuid v1.2.0/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek= -github.com/klauspost/pgzip v1.2.5 h1:qnWYvvKqedOF2ulHpMG72XQol4ILEJ8k2wwRl/Km8oE= -github.com/klauspost/pgzip v1.2.5/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs= github.com/machinebox/graphql v0.2.2 h1:dWKpJligYKhYKO5A2gvNhkJdQMNZeChZYyBbrZkBZfo= github.com/machinebox/graphql v0.2.2/go.mod h1:F+kbVMHuwrQ5tYgU9JXlnskM8nOaFxCAEolaQybkjWA= -github.com/mholt/archiver v3.1.1+incompatible h1:1dCVxuqs0dJseYEhi5pl7MYPH9zDa1wBi7mF09cbNkU= -github.com/mholt/archiver v3.1.1+incompatible/go.mod h1:Dh2dOXnSdiLxRiPoVfIr/fI1TwETms9B8CTWfeh7ROU= -github.com/mholt/archiver/v3 v3.5.1 h1:rDjOBX9JSF5BvoJGvjqK479aL70qh9DIpZCl+k7Clwo= -github.com/mholt/archiver/v3 v3.5.1/go.mod h1:e3dqJ7H78uzsRSEACH1joayhuSyhnonssnDhppzS1L4= -github.com/nwaples/rardecode v1.1.0 h1:vSxaY8vQhOcVr4mm5e8XllHWTiM4JF507A0Katqw7MQ= -github.com/nwaples/rardecode v1.1.0/go.mod h1:5DzqNKiOdpKKBH87u8VlvAnPZMXcGRhxWkRpHbbfGS0= -github.com/pierrec/lz4 v2.6.1+incompatible h1:9UY3+iC23yxF0UfGaYrGplQ+79Rg+h/q9FV9ix19jjM= -github.com/pierrec/lz4 v2.6.1+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= -github.com/pierrec/lz4/v4 v4.1.2 h1:qvY3YFXRQE/XB8MlLzJH7mSzBs74eA2gg52YTk6jUPM= -github.com/pierrec/lz4/v4 v4.1.2/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= +github.com/matryer/is v1.4.1 h1:55ehd8zaGABKLXQUe2awZ99BD/PTc2ls+KV/dXphgEQ= +github.com/matryer/is v1.4.1/go.mod h1:8I/i5uYgLzgsgEloJE1U6xx5HkBQpAZvepWuujKwMRU= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= @@ -111,11 +95,8 @@ github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpE github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/ulikunitz/xz v0.5.8/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= -github.com/ulikunitz/xz v0.5.9 h1:RsKRIA2MO8x56wkkcd3LbtcE/uMszhb6DpRf+3uwa3I= -github.com/ulikunitz/xz v0.5.9/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= -github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 h1:nIPpBwaJSVYIxUFsDv3M8ofmx9yWTog9BfvIu0q41lo= -github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8/go.mod h1:HUYIGzjTL3rfEspMxjDjgmT5uz5wzYJKVo23qUhYTos= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0 h1:9G6E0TXzGFVfTnawRzrPl83iHOAV7L8NJiR8RSGYV1g= @@ -126,6 +107,8 @@ go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= +go.opentelemetry.io/otel/sdk v1.24.0 h1:YMPPDNymmQN3ZgczicBY3B6sf9n62Dlj9pWD3ucgoDw= +go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= @@ -201,10 +184,12 @@ google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpAD google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= diff --git a/registry/aurora/README.md b/registry/hasura/aurora/README.md similarity index 100% rename from registry/aurora/README.md rename to registry/hasura/aurora/README.md diff --git a/registry/aurora/logo.svg b/registry/hasura/aurora/logo.svg similarity index 100% rename from registry/aurora/logo.svg rename to registry/hasura/aurora/logo.svg diff --git a/registry/aurora/metadata.json b/registry/hasura/aurora/metadata.json similarity index 90% rename from registry/aurora/metadata.json rename to registry/hasura/aurora/metadata.json index c00ff339..fd1f453b 100644 --- a/registry/aurora/metadata.json +++ b/registry/hasura/aurora/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/azure-cosmos/README.md b/registry/hasura/azure-cosmos/README.md similarity index 100% rename from registry/azure-cosmos/README.md rename to registry/hasura/azure-cosmos/README.md diff --git a/registry/azure-cosmos/logo.png b/registry/hasura/azure-cosmos/logo.png similarity index 100% rename from registry/azure-cosmos/logo.png rename to registry/hasura/azure-cosmos/logo.png diff --git a/registry/azure-cosmos/metadata.json b/registry/hasura/azure-cosmos/metadata.json similarity index 100% rename from registry/azure-cosmos/metadata.json rename to registry/hasura/azure-cosmos/metadata.json diff --git a/registry/citus/README.md b/registry/hasura/citus/README.md similarity index 100% rename from registry/citus/README.md rename to registry/hasura/citus/README.md diff --git a/registry/citus/logo.svg b/registry/hasura/citus/logo.svg similarity index 100% rename from registry/citus/logo.svg rename to registry/hasura/citus/logo.svg diff --git a/registry/citus/metadata.json b/registry/hasura/citus/metadata.json similarity index 90% rename from registry/citus/metadata.json rename to registry/hasura/citus/metadata.json index 1f4af8a0..76480564 100644 --- a/registry/citus/metadata.json +++ b/registry/hasura/citus/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/clickhouse/README.md b/registry/hasura/clickhouse/README.md similarity index 100% rename from registry/clickhouse/README.md rename to registry/hasura/clickhouse/README.md diff --git a/registry/clickhouse/logo.png b/registry/hasura/clickhouse/logo.png similarity index 100% rename from registry/clickhouse/logo.png rename to registry/hasura/clickhouse/logo.png diff --git a/registry/clickhouse/metadata.json b/registry/hasura/clickhouse/metadata.json similarity index 91% rename from registry/clickhouse/metadata.json rename to registry/hasura/clickhouse/metadata.json index 4a15c32d..7a20886e 100644 --- a/registry/clickhouse/metadata.json +++ b/registry/hasura/clickhouse/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v0.2.8" + "latest_version": "v0.2.10" }, "author": { "support_email": "support@hasura.io", @@ -17,6 +17,17 @@ "is_verified": true, "is_hosted_by_hasura": false, "packages": [ + { + "version": "0.2.10", + "uri": "https://github.com/hasura/ndc-clickhouse/releases/download/v0.2.10/connector-definition.tgz", + "checksum": { + "type": "sha256", + "value": "4eb32262e528d0261afd0f6a4b283a6fe3fd0edf395b732fe6abcacfdf4ff999" + }, + "source": { + "hash": "dbe5b7765b1c9276e5734c8fbc5005e7b71d0500" + } + }, { "version": "0.2.9", "uri": "https://github.com/hasura/ndc-clickhouse/releases/download/v0.2.9/connector-definition.tgz", @@ -132,6 +143,11 @@ "is_open_source": true, "repository": "https://github.com/hasura/ndc-clickhouse/", "version": [ + { + "tag": "v0.2.10", + "hash": "dbe5b7765b1c9276e5734c8fbc5005e7b71d0500", + "is_verified": true + }, { "tag": "v0.2.9", "hash": "93752f433f4e7c91f0c13d92ea9369deb97d1970", diff --git a/registry/cockroach/README.md b/registry/hasura/cockroach/README.md similarity index 100% rename from registry/cockroach/README.md rename to registry/hasura/cockroach/README.md diff --git a/registry/cockroach/logo.png b/registry/hasura/cockroach/logo.png similarity index 100% rename from registry/cockroach/logo.png rename to registry/hasura/cockroach/logo.png diff --git a/registry/cockroach/metadata.json b/registry/hasura/cockroach/metadata.json similarity index 90% rename from registry/cockroach/metadata.json rename to registry/hasura/cockroach/metadata.json index 88569e24..f4115c5d 100644 --- a/registry/cockroach/metadata.json +++ b/registry/hasura/cockroach/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/duckdb/README.md b/registry/hasura/duckdb/README.md similarity index 100% rename from registry/duckdb/README.md rename to registry/hasura/duckdb/README.md diff --git a/registry/duckdb/logo.svg b/registry/hasura/duckdb/logo.svg similarity index 100% rename from registry/duckdb/logo.svg rename to registry/hasura/duckdb/logo.svg diff --git a/registry/duckdb/metadata.json b/registry/hasura/duckdb/metadata.json similarity index 100% rename from registry/duckdb/metadata.json rename to registry/hasura/duckdb/metadata.json diff --git a/registry/elasticsearch/README.md b/registry/hasura/elasticsearch/README.md similarity index 100% rename from registry/elasticsearch/README.md rename to registry/hasura/elasticsearch/README.md diff --git a/registry/elasticsearch/logo.png b/registry/hasura/elasticsearch/logo.png similarity index 100% rename from registry/elasticsearch/logo.png rename to registry/hasura/elasticsearch/logo.png diff --git a/registry/elasticsearch/metadata.json b/registry/hasura/elasticsearch/metadata.json similarity index 83% rename from registry/elasticsearch/metadata.json rename to registry/hasura/elasticsearch/metadata.json index 1bc665e1..75b74dcb 100644 --- a/registry/elasticsearch/metadata.json +++ b/registry/hasura/elasticsearch/metadata.json @@ -7,7 +7,7 @@ "tags": [ "search" ], - "latest_version": "v1.0.0" + "latest_version": "v1.0.1" }, "author": { "support_email": "support@hasura.io", @@ -60,6 +60,17 @@ "source": { "hash": "9f1f508f551b4a9dec02c49e3312f38c24bb16c4" } + }, + { + "version": "1.0.1", + "uri": "https://github.com/hasura/ndc-elasticsearch/releases/download/v1.0.1/connector-definition.tgz", + "checksum": { + "type": "sha256", + "value": "83b0b4f5b1f60a50e303f6354c4d48d397fc7d0a361eb8a14d8fe11b63fe6abd" + }, + "source": { + "hash": "72fad205f57e88781da6acafe1e03a7d220467c7" + } } ], "source_code": { @@ -85,6 +96,11 @@ "tag": "v1.0.0", "hash": "9f1f508f551b4a9dec02c49e3312f38c24bb16c4", "is_verified": true + }, + { + "tag": "v1.0.1", + "hash": "72fad205f57e88781da6acafe1e03a7d220467c7", + "is_verified": true } ] } diff --git a/registry/go/README.md b/registry/hasura/go/README.md similarity index 100% rename from registry/go/README.md rename to registry/hasura/go/README.md diff --git a/registry/go/logo.svg b/registry/hasura/go/logo.svg similarity index 100% rename from registry/go/logo.svg rename to registry/hasura/go/logo.svg diff --git a/registry/go/metadata.json b/registry/hasura/go/metadata.json similarity index 100% rename from registry/go/metadata.json rename to registry/hasura/go/metadata.json diff --git a/registry/graphql/README.md b/registry/hasura/graphql/README.md similarity index 100% rename from registry/graphql/README.md rename to registry/hasura/graphql/README.md diff --git a/registry/graphql/logo.svg b/registry/hasura/graphql/logo.svg similarity index 100% rename from registry/graphql/logo.svg rename to registry/hasura/graphql/logo.svg diff --git a/registry/graphql/metadata.json b/registry/hasura/graphql/metadata.json similarity index 79% rename from registry/graphql/metadata.json rename to registry/hasura/graphql/metadata.json index 138690fd..aa468a3b 100644 --- a/registry/graphql/metadata.json +++ b/registry/hasura/graphql/metadata.json @@ -5,7 +5,7 @@ "title": "GraphQL Native Data Connector", "logo": "logo.svg", "tags": [], - "latest_version": "v0.1.2" + "latest_version": "v0.1.3" }, "author": { "support_email": "support@hasura.io", @@ -15,6 +15,17 @@ "is_verified": true, "is_hosted_by_hasura": false, "packages": [ + { + "version": "0.1.3", + "uri": "https://github.com/hasura/ndc-graphql/releases/download/v0.1.3/connector-definition.tgz", + "checksum": { + "type": "sha256", + "value": "4045cfd23f6ed4bf747241f967a7717dd391b5fe8285ec486584427698cf9881" + }, + "source": { + "hash": "4262e34d57255c622a47daa408eba8c25fb279f7" + } + }, { "version": "0.1.2", "uri": "https://github.com/hasura/ndc-graphql/releases/download/v0.1.2/connector-definition.tgz", @@ -53,6 +64,11 @@ "is_open_source": true, "repository": "https://github.com/hasura/ndc-graphql/", "version": [ + { + "tag": "v0.1.3", + "hash": "4262e34d57255c622a47daa408eba8c25fb279f7", + "is_verified": true + }, { "tag": "v0.1.2", "hash": "1cfb5d3e52d914acf4e5e96edd54d7fc744ec304", diff --git a/registry/mongodb/README.md b/registry/hasura/mongodb/README.md similarity index 100% rename from registry/mongodb/README.md rename to registry/hasura/mongodb/README.md diff --git a/registry/mongodb/logo.png b/registry/hasura/mongodb/logo.png similarity index 100% rename from registry/mongodb/logo.png rename to registry/hasura/mongodb/logo.png diff --git a/registry/mongodb/metadata.json b/registry/hasura/mongodb/metadata.json similarity index 100% rename from registry/mongodb/metadata.json rename to registry/hasura/mongodb/metadata.json diff --git a/registry/mysql/README.md b/registry/hasura/mysql/README.md similarity index 100% rename from registry/mysql/README.md rename to registry/hasura/mysql/README.md diff --git a/registry/mysql/logo.svg b/registry/hasura/mysql/logo.svg similarity index 100% rename from registry/mysql/logo.svg rename to registry/hasura/mysql/logo.svg diff --git a/registry/mysql/metadata.json b/registry/hasura/mysql/metadata.json similarity index 100% rename from registry/mysql/metadata.json rename to registry/hasura/mysql/metadata.json diff --git a/registry/neon/README.md b/registry/hasura/neon/README.md similarity index 100% rename from registry/neon/README.md rename to registry/hasura/neon/README.md diff --git a/registry/neon/logo.svg b/registry/hasura/neon/logo.svg similarity index 100% rename from registry/neon/logo.svg rename to registry/hasura/neon/logo.svg diff --git a/registry/neon/metadata.json b/registry/hasura/neon/metadata.json similarity index 90% rename from registry/neon/metadata.json rename to registry/hasura/neon/metadata.json index 2abe04b7..ca88bf34 100644 --- a/registry/neon/metadata.json +++ b/registry/hasura/neon/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/nodejs-lambda/README.md b/registry/hasura/nodejs-lambda/README.md similarity index 100% rename from registry/nodejs-lambda/README.md rename to registry/hasura/nodejs-lambda/README.md diff --git a/registry/nodejs-lambda/logo.png b/registry/hasura/nodejs-lambda/logo.png similarity index 100% rename from registry/nodejs-lambda/logo.png rename to registry/hasura/nodejs-lambda/logo.png diff --git a/registry/nodejs-lambda/metadata.json b/registry/hasura/nodejs-lambda/metadata.json similarity index 88% rename from registry/nodejs-lambda/metadata.json rename to registry/hasura/nodejs-lambda/metadata.json index 02b0367d..d5bb15a6 100644 --- a/registry/nodejs-lambda/metadata.json +++ b/registry/hasura/nodejs-lambda/metadata.json @@ -5,7 +5,7 @@ "title": "NodeJS Lambda Connector", "logo": "logo.png", "tags": [], - "latest_version": "v1.5.0" + "latest_version": "v1.6.0" }, "author": { "support_email": "support@hasura.io", @@ -15,6 +15,17 @@ "is_verified": true, "is_hosted_by_hasura": false, "packages": [ + { + "version": "1.6.0", + "uri": "https://github.com/hasura/ndc-nodejs-lambda/releases/download/v1.6.0/connector-definition.tgz", + "checksum": { + "type": "sha256", + "value": "f69645af8190a93484a8c374830c788035ebf91135e53f57e214b04fe69475e7" + }, + "source": { + "hash": "2fb76722db449b5525d1dcce33cf48ee0cf44ad8" + } + }, { "version": "1.5.0", "uri": "https://github.com/hasura/ndc-nodejs-lambda/releases/download/v1.5.0/connector-definition.tgz", @@ -97,6 +108,11 @@ "is_open_source": true, "repository": "https://github.com/hasura/ndc-nodejs-lambda/", "version": [ + { + "tag": "v1.6.0", + "hash": "2fb76722db449b5525d1dcce33cf48ee0cf44ad8", + "is_verified": true + }, { "tag": "v1.5.0", "hash": "2a9a04d0a1c8116d9b864a83d81817ccddae355d", diff --git a/registry/open-api-lambda/README.md b/registry/hasura/open-api-lambda/README.md similarity index 100% rename from registry/open-api-lambda/README.md rename to registry/hasura/open-api-lambda/README.md diff --git a/registry/open-api-lambda/logo.png b/registry/hasura/open-api-lambda/logo.png similarity index 100% rename from registry/open-api-lambda/logo.png rename to registry/hasura/open-api-lambda/logo.png diff --git a/registry/open-api-lambda/metadata.json b/registry/hasura/open-api-lambda/metadata.json similarity index 100% rename from registry/open-api-lambda/metadata.json rename to registry/hasura/open-api-lambda/metadata.json diff --git a/registry/oracle/README.md b/registry/hasura/oracle/README.md similarity index 100% rename from registry/oracle/README.md rename to registry/hasura/oracle/README.md diff --git a/registry/oracle/logo.svg b/registry/hasura/oracle/logo.svg similarity index 100% rename from registry/oracle/logo.svg rename to registry/hasura/oracle/logo.svg diff --git a/registry/oracle/metadata.json b/registry/hasura/oracle/metadata.json similarity index 100% rename from registry/oracle/metadata.json rename to registry/hasura/oracle/metadata.json diff --git a/registry/postgres-alloydb/README.md b/registry/hasura/postgres-alloydb/README.md similarity index 100% rename from registry/postgres-alloydb/README.md rename to registry/hasura/postgres-alloydb/README.md diff --git a/registry/postgres-alloydb/logo.png b/registry/hasura/postgres-alloydb/logo.png similarity index 100% rename from registry/postgres-alloydb/logo.png rename to registry/hasura/postgres-alloydb/logo.png diff --git a/registry/postgres-alloydb/metadata.json b/registry/hasura/postgres-alloydb/metadata.json similarity index 90% rename from registry/postgres-alloydb/metadata.json rename to registry/hasura/postgres-alloydb/metadata.json index 28e968ca..7c9faa60 100644 --- a/registry/postgres-alloydb/metadata.json +++ b/registry/hasura/postgres-alloydb/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/postgres-azure/README.md b/registry/hasura/postgres-azure/README.md similarity index 100% rename from registry/postgres-azure/README.md rename to registry/hasura/postgres-azure/README.md diff --git a/registry/postgres-azure/logo.png b/registry/hasura/postgres-azure/logo.png similarity index 100% rename from registry/postgres-azure/logo.png rename to registry/hasura/postgres-azure/logo.png diff --git a/registry/postgres-azure/metadata.json b/registry/hasura/postgres-azure/metadata.json similarity index 90% rename from registry/postgres-azure/metadata.json rename to registry/hasura/postgres-azure/metadata.json index 4e85da7d..4abff6a4 100644 --- a/registry/postgres-azure/metadata.json +++ b/registry/hasura/postgres-azure/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/postgres-cosmos/README.md b/registry/hasura/postgres-cosmos/README.md similarity index 100% rename from registry/postgres-cosmos/README.md rename to registry/hasura/postgres-cosmos/README.md diff --git a/registry/postgres-cosmos/logo.png b/registry/hasura/postgres-cosmos/logo.png similarity index 100% rename from registry/postgres-cosmos/logo.png rename to registry/hasura/postgres-cosmos/logo.png diff --git a/registry/postgres-cosmos/metadata.json b/registry/hasura/postgres-cosmos/metadata.json similarity index 91% rename from registry/postgres-cosmos/metadata.json rename to registry/hasura/postgres-cosmos/metadata.json index 66d97b3e..8c2bb20e 100644 --- a/registry/postgres-cosmos/metadata.json +++ b/registry/hasura/postgres-cosmos/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/postgres-gcp/README.md b/registry/hasura/postgres-gcp/README.md similarity index 100% rename from registry/postgres-gcp/README.md rename to registry/hasura/postgres-gcp/README.md diff --git a/registry/postgres-gcp/logo.png b/registry/hasura/postgres-gcp/logo.png similarity index 100% rename from registry/postgres-gcp/logo.png rename to registry/hasura/postgres-gcp/logo.png diff --git a/registry/postgres-gcp/metadata.json b/registry/hasura/postgres-gcp/metadata.json similarity index 90% rename from registry/postgres-gcp/metadata.json rename to registry/hasura/postgres-gcp/metadata.json index 691bdfda..33c4a3db 100644 --- a/registry/postgres-gcp/metadata.json +++ b/registry/hasura/postgres-gcp/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/postgres-timescaledb/README.md b/registry/hasura/postgres-timescaledb/README.md similarity index 100% rename from registry/postgres-timescaledb/README.md rename to registry/hasura/postgres-timescaledb/README.md diff --git a/registry/postgres-timescaledb/logo.png b/registry/hasura/postgres-timescaledb/logo.png similarity index 100% rename from registry/postgres-timescaledb/logo.png rename to registry/hasura/postgres-timescaledb/logo.png diff --git a/registry/postgres-timescaledb/metadata.json b/registry/hasura/postgres-timescaledb/metadata.json similarity index 90% rename from registry/postgres-timescaledb/metadata.json rename to registry/hasura/postgres-timescaledb/metadata.json index d014e1fe..201e71b3 100644 --- a/registry/postgres-timescaledb/metadata.json +++ b/registry/hasura/postgres-timescaledb/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/postgres/README.md b/registry/hasura/postgres/README.md similarity index 100% rename from registry/postgres/README.md rename to registry/hasura/postgres/README.md diff --git a/registry/postgres/logo.png b/registry/hasura/postgres/logo.png similarity index 100% rename from registry/postgres/logo.png rename to registry/hasura/postgres/logo.png diff --git a/registry/postgres/metadata.json b/registry/hasura/postgres/metadata.json similarity index 90% rename from registry/postgres/metadata.json rename to registry/hasura/postgres/metadata.json index af1333d7..501c2b73 100644 --- a/registry/postgres/metadata.json +++ b/registry/hasura/postgres/metadata.json @@ -7,7 +7,7 @@ "tags": [ "database" ], - "latest_version": "v1.0.1" + "latest_version": "v1.0.2" }, "author": { "support_email": "support@hasura.io", @@ -54,6 +54,11 @@ "tag": "v1.0.1", "hash": "e2fd651", "is_verified": true + }, + { + "tag": "v1.0.2", + "hash": "1378805", + "is_verified": true } ] } diff --git a/registry/qdrant/README.md b/registry/hasura/qdrant/README.md similarity index 100% rename from registry/qdrant/README.md rename to registry/hasura/qdrant/README.md diff --git a/registry/qdrant/logo.png b/registry/hasura/qdrant/logo.png similarity index 100% rename from registry/qdrant/logo.png rename to registry/hasura/qdrant/logo.png diff --git a/registry/qdrant/metadata.json b/registry/hasura/qdrant/metadata.json similarity index 100% rename from registry/qdrant/metadata.json rename to registry/hasura/qdrant/metadata.json diff --git a/registry/sendgrid/README.md b/registry/hasura/sendgrid/README.md similarity index 100% rename from registry/sendgrid/README.md rename to registry/hasura/sendgrid/README.md diff --git a/registry/sendgrid/logo.png b/registry/hasura/sendgrid/logo.png similarity index 100% rename from registry/sendgrid/logo.png rename to registry/hasura/sendgrid/logo.png diff --git a/registry/sendgrid/metadata.json b/registry/hasura/sendgrid/metadata.json similarity index 100% rename from registry/sendgrid/metadata.json rename to registry/hasura/sendgrid/metadata.json diff --git a/registry/snowflake/README.md b/registry/hasura/snowflake/README.md similarity index 100% rename from registry/snowflake/README.md rename to registry/hasura/snowflake/README.md diff --git a/registry/snowflake/logo.svg b/registry/hasura/snowflake/logo.svg similarity index 100% rename from registry/snowflake/logo.svg rename to registry/hasura/snowflake/logo.svg diff --git a/registry/snowflake/metadata.json b/registry/hasura/snowflake/metadata.json similarity index 100% rename from registry/snowflake/metadata.json rename to registry/hasura/snowflake/metadata.json diff --git a/registry/sqlserver/README.md b/registry/hasura/sqlserver/README.md similarity index 100% rename from registry/sqlserver/README.md rename to registry/hasura/sqlserver/README.md diff --git a/registry/sqlserver/logo.png b/registry/hasura/sqlserver/logo.png similarity index 100% rename from registry/sqlserver/logo.png rename to registry/hasura/sqlserver/logo.png diff --git a/registry/sqlserver/metadata.json b/registry/hasura/sqlserver/metadata.json similarity index 100% rename from registry/sqlserver/metadata.json rename to registry/hasura/sqlserver/metadata.json diff --git a/registry/turso/README.md b/registry/hasura/turso/README.md similarity index 100% rename from registry/turso/README.md rename to registry/hasura/turso/README.md diff --git a/registry/turso/logo.svg b/registry/hasura/turso/logo.svg similarity index 100% rename from registry/turso/logo.svg rename to registry/hasura/turso/logo.svg diff --git a/registry/turso/metadata.json b/registry/hasura/turso/metadata.json similarity index 100% rename from registry/turso/metadata.json rename to registry/hasura/turso/metadata.json diff --git a/registry/typescript-deno/README.md b/registry/hasura/typescript-deno/README.md similarity index 100% rename from registry/typescript-deno/README.md rename to registry/hasura/typescript-deno/README.md diff --git a/registry/typescript-deno/logo.png b/registry/hasura/typescript-deno/logo.png similarity index 100% rename from registry/typescript-deno/logo.png rename to registry/hasura/typescript-deno/logo.png diff --git a/registry/typescript-deno/metadata.json b/registry/hasura/typescript-deno/metadata.json similarity index 100% rename from registry/typescript-deno/metadata.json rename to registry/hasura/typescript-deno/metadata.json diff --git a/registry/yugabyte/README.md b/registry/hasura/yugabyte/README.md similarity index 100% rename from registry/yugabyte/README.md rename to registry/hasura/yugabyte/README.md diff --git a/registry/yugabyte/logo.svg b/registry/hasura/yugabyte/logo.svg similarity index 100% rename from registry/yugabyte/logo.svg rename to registry/hasura/yugabyte/logo.svg diff --git a/registry/yugabyte/metadata.json b/registry/hasura/yugabyte/metadata.json similarity index 100% rename from registry/yugabyte/metadata.json rename to registry/hasura/yugabyte/metadata.json diff --git a/rfcs/0002-distribution-gh.md b/rfcs/0002-distribution-gh.md index e1b39817..2933022a 100644 --- a/rfcs/0002-distribution-gh.md +++ b/rfcs/0002-distribution-gh.md @@ -1,8 +1,13 @@ # Connector Package Distribution RFC - Milestone 1 +> [!NOTE] +> This RFC has since been extended by the [Connector publishing automation](./0006-connectors-publishing-automation.md) + This is a Work-In-Progress document. Please provide any feedback you wish to contribute via Github comments and suggestions. + + ## Purpose Connector API, definition and packaging are specified respectively by: @@ -271,4 +276,3 @@ Any publicly accessible APIs with publication capabilities have the potential to * Recycling of content * Unintentional mistakes * Spam / Reflection - diff --git a/rfcs/0006-connector-publishing-automation.md b/rfcs/0006-connector-publishing-automation.md index ac47f297..d1a21a11 100644 --- a/rfcs/0006-connector-publishing-automation.md +++ b/rfcs/0006-connector-publishing-automation.md @@ -1,28 +1,24 @@ # Connector registry Github packaging -This is a Work-In-Progress document. Please provide any feedback you wish to contribute via Github comments and suggestions. +> [!NOTE] +> This RFC is an update on the [Connector Package Distribution RFC](0002-distribution-gh.md). ## Introduction -This RFC proposes how a new connector version should be added to the `registry` folder to automatically be published. Publishing here -means that the connector version will be available for use in Hasura's DDN. +This RFC proposes how a new connector version should be added to the `registry` folder to automatically be published. Publishing in this context means that the connector version will be available for public use in Hasura's DDN. -This RFC builds on top of the [Connector Package Distribution RFC](0002-distribution-gh.md). +## File structure of the connectors `registry` -## Changes to the existing `metadata.json` file +The packages field in the `metadata.json` file will be removed and replaced by a releases folder within the connector directory. -The `packages` field will be removed from the `metadata.json` file. The `packages` field will be replaced by a `releases` folder in the connector directory. +The releases folder will house a separate folder for each version of the connector, with each version folder containing a `connector-packaging.json` file. -The `releases` folder will contain a folder for each version of the connector. Each version folder will contain a `connector-packaging.json` file. - -The `connector-packaging.json` file will contain the relevant information to access the package definition. - -## Directory structure of the connectors `registry` +This `connector-packaging.json` file will include all the necessary information to access the package definition. The following directory structure for connector versions is proposed: ``` -registry/ +registry// ├── logo.png ├── metadata.json ├── README.md @@ -48,14 +44,17 @@ registry/ The `registry` folder will contain a folder for each connector. Each connector folder will contain the following files: - `logo.png`: The logo of the connector. The logo should be in PNG format. -- `metadata.json`: The metadata of the connector. (TODO: Link to the metadata RFC) + +- `metadata.json`: The metadata of the connector. Metadata format is described in the [Github Distribution RFC](./0002-distribution-gh.md). - `README.md`: The README file of the connector. The README file should contain information about the connector, how to use it, and any other relevant information. The contents of the README file would be displayed in the landing page of the connector in the Hasura. - `releases`: The releases folder will contain a folder for each version of the connector. Each version folder will contain a `connector-packaging.json` file. More details about the `connector-packaging.json` file are provided below. +NOTE: The `releases` folder should only be added for Hub connectors. +For example, `postgres-azure` connector should not have a `releases` folder as it is not a Hub connector. ### `connector-packaging.json` -Every connector version should have a package definition, as specified here(TODO: Link to the packaging RFC). The `connector-packaging.json` +Every connector version should have a package definition. The `connector-packaging.json` file should contain the relevant information to access the package definition. ```json @@ -91,8 +90,11 @@ To publish a new connector version, follow these steps: 5. Once the workflow is successful, the new version of the connector will be available in the **Staging** Hasura DDN. Every new commit will overwrite the previous version of that connector in the staging DDN. So, feel free to push new commits to the PR to update the connector version in the staging DDN. 6. Once the PR is merged, the new version of the connector will be available in the **Production** Hasura DDN. +> [!NOTE] +> The `registry-update` workflow will only run on the PRs against the `main` branch of the repository. -P.S: Multiple connector versions can be published in the same PR. The `registry-update` workflow will publish all the versions in the PR to the registry. +> [!NOTE] +> Multiple connector versions can be published in the same PR. The `registry-update` workflow will publish all the versions in the PR to the registry. ## Updates to logo and README diff --git a/scripts/update-ndc-postgres.sh b/scripts/update-ndc-postgres.sh index 2042d55b..df8a3ea0 100755 --- a/scripts/update-ndc-postgres.sh +++ b/scripts/update-ndc-postgres.sh @@ -33,18 +33,18 @@ jq \ --arg tag "${TAG}" \ --arg hash "${HASH}" \ '.source_code.version += [{"tag": $tag, "hash": $hash, "is_verified": true}]' \ - registry/"${variant}"/metadata.json \ - > registry/"${variant}"/metadata.json2 + registry/hasura/"${variant}"/metadata.json \ + > registry/hasura/"${variant}"/metadata.json2 -mv registry/"${variant}"/metadata.json2 registry/"${variant}"/metadata.json +mv registry/hasura/"${variant}"/metadata.json2 registry/hasura/"${variant}"/metadata.json # set latest version jq \ --arg tag "${TAG}" \ '.overview.latest_version |= $tag' \ - registry/"${variant}"/metadata.json \ - > registry/"${variant}"/metadata.json2 + registry/hasura/"${variant}"/metadata.json \ + > registry/hasura/"${variant}"/metadata.json2 -mv registry/"${variant}"/metadata.json2 registry/"${variant}"/metadata.json +mv registry/hasura/"${variant}"/metadata.json2 registry/hasura/"${variant}"/metadata.json done