github.com/treeverse/lakefs@v1.24.1-0.20240520134607-95648127bfb0/pkg/actions/lua/open.go (about)

     1  package lua
     2  
     3  import (
     4  	"context"
     5  
     6  	"github.com/Shopify/go-lua"
     7  
     8  	"github.com/treeverse/lakefs/pkg/actions/lua/crypto/aes"
     9  	"github.com/treeverse/lakefs/pkg/actions/lua/crypto/hmac"
    10  	"github.com/treeverse/lakefs/pkg/actions/lua/crypto/sha256"
    11  	"github.com/treeverse/lakefs/pkg/actions/lua/databricks"
    12  	"github.com/treeverse/lakefs/pkg/actions/lua/encoding/base64"
    13  	"github.com/treeverse/lakefs/pkg/actions/lua/encoding/hex"
    14  	"github.com/treeverse/lakefs/pkg/actions/lua/encoding/json"
    15  	"github.com/treeverse/lakefs/pkg/actions/lua/encoding/parquet"
    16  	"github.com/treeverse/lakefs/pkg/actions/lua/encoding/yaml"
    17  	"github.com/treeverse/lakefs/pkg/actions/lua/formats"
    18  	"github.com/treeverse/lakefs/pkg/actions/lua/hook"
    19  	"github.com/treeverse/lakefs/pkg/actions/lua/net/http"
    20  	"github.com/treeverse/lakefs/pkg/actions/lua/net/url"
    21  	"github.com/treeverse/lakefs/pkg/actions/lua/path"
    22  	"github.com/treeverse/lakefs/pkg/actions/lua/regexp"
    23  	"github.com/treeverse/lakefs/pkg/actions/lua/storage/aws"
    24  	"github.com/treeverse/lakefs/pkg/actions/lua/storage/azure"
    25  	"github.com/treeverse/lakefs/pkg/actions/lua/storage/gcloud"
    26  	"github.com/treeverse/lakefs/pkg/actions/lua/strings"
    27  	"github.com/treeverse/lakefs/pkg/actions/lua/time"
    28  	"github.com/treeverse/lakefs/pkg/actions/lua/util"
    29  	"github.com/treeverse/lakefs/pkg/actions/lua/uuid"
    30  )
    31  
    32  // most classes here are taken from: https://github.com/Shopify/goluago
    33  // See the original MIT license with copyright at ./LICENSE.md
    34  
    35  func Open(l *lua.State, ctx context.Context, cfg OpenSafeConfig) {
    36  	regexp.Open(l)
    37  	strings.Open(l)
    38  	util.Open(l)
    39  	json.Open(l)
    40  	yaml.Open(l)
    41  	time.Open(l)
    42  	hmac.Open(l)
    43  	base64.Open(l)
    44  	uuid.Open(l)
    45  	hex.Open(l)
    46  	sha256.Open(l)
    47  	aes.Open(l)
    48  	parquet.Open(l)
    49  	path.Open(l)
    50  	hook.Open(l)
    51  	aws.Open(l, ctx)
    52  	gcloud.Open(l, ctx)
    53  	azure.Open(l, ctx)
    54  	url.Open(l)
    55  	formats.Open(l, ctx, cfg.LakeFSAddr)
    56  	databricks.Open(l, ctx)
    57  	if cfg.NetHTTPEnabled {
    58  		http.Open(l)
    59  	}
    60  }