presto

package module
v0.44.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 7, 2026 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Container

type Container struct {
	testcontainers.Container
}

Container represents the Presto container type used in the module

func Run

Run creates an instance of the Presto container type. It waits for the coordinator to be fully started by:

  1. Polling /v1/info until starting=false (catalogs loaded).
  2. Polling /v1/cluster until at least one worker is active and can accept queries.
Example
package main

import (
	"context"
	"fmt"
	"log"

	"github.com/testcontainers/testcontainers-go"
	"github.com/testcontainers/testcontainers-go/modules/presto"
)

func main() {
	// runPrestoContainer {
	ctx := context.Background()

	prestoContainer, err := presto.Run(ctx, "prestodb/presto:0.286")
	defer func() {
		if err := testcontainers.TerminateContainer(prestoContainer); err != nil {
			log.Printf("failed to terminate container: %s", err)
		}
	}()
	if err != nil {
		log.Printf("failed to start container: %s", err)
		return
	}
	// }

	connStr, err := prestoContainer.ConnectionString(ctx)
	if err != nil {
		log.Printf("failed to get connection string: %s", err)
		return
	}

	fmt.Println(connStr[:7]) // print "http://"

}
Output:
http://

func (*Container) ConnectionString

func (c *Container) ConnectionString(ctx context.Context) (string, error)

ConnectionString returns the HTTP connection string for the Presto container, e.g. "http://localhost:8080" (IPv6-safe).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL