All Downloads are FREE. Search and download functionalities are using the official Maven repository.

dev.galasa.docker.DockerContainerConfig Maven / Gradle / Ivy

The newest version!
/*
 * Copyright contributors to the Galasa project
 *
 * SPDX-License-Identifier: EPL-2.0
 */
package dev.galasa.docker;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import dev.galasa.docker.internal.DockerManagerField;
import dev.galasa.framework.spi.ValidAnnotatedFields;

/**
 * Docker Container Configuation
 * 
 * @galasa.annotation
 * 
 * @galasa.description The {@literal @}DockerContainerConfig annotation provides an object to manually configure certain aspects
 * of a containers run. Within the annotation, volumes can be requests, for both binding and provisioning. Look at the Docker volume annotation 
 * description for more details. The IDockerContainerConfig object it self allows for non provisioing configurations to be set at test time and 
 * ammended between container startups. The IDockerContainer object needs to use the startWithConfig() method to take use of the customised 
 * startup config
 * 
 * @galasa.examples
 * 
   {@literal @}DockerContainerConfig(
        dockerVolumes =  {
            {@literal @}DockerVolume(mountPath = "/tmp/testvol"),
        }
    )
    public IDockerContainerConfig config;
   
*/ @Retention(RetentionPolicy.RUNTIME) @Target({ ElementType.FIELD }) @ValidAnnotatedFields({ IDockerContainerConfig.class }) @DockerManagerField public @interface DockerContainerConfig { /** * Multiple volumes can be mounted within a single configuration * * @return */ public DockerVolume[] dockerVolumes() default {}; }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy