# Licensed to the Apache Software Foundation (ASF) under the terms of ASLv2 (http://www.apache.org/licenses/LICENSE-2.0).

Test-Cases: ${classes;CONCRETE;EXTENDS;org.apache.ace.it.IntegrationTestBase}
-buildpath: \
	junit.osgi,\
	osgi.core;version=6.0.0,\
	osgi.cmpn,\
	org.apache.felix.http.servlet-api,\
	org.apache.felix.dependencymanager,\
	org.apache.ace.test;version=latest,\
	org.apache.ace.http.listener;version=latest,\
	org.apache.ace.configurator.useradmin.task;version=latest,\
	org.apache.ace.discovery.api;version=latest,\
	org.apache.ace.discovery.property;version=latest,\
	org.apache.ace.identification.api;version=latest,\
	org.apache.ace.identification.property;version=latest,\
	org.apache.ace.scheduler.api;version=latest,\
	org.apache.ace.deployment.servlet;version=latest,\
	org.apache.ace.obr.storage;version=latest,\
	org.apache.ace.repository.api;version=latest,\
	org.apache.ace.client.repository.api;version=latest,\
	org.apache.ace.client.repository.helper.bundle;version=latest,\
	org.apache.ace.log.server.store.api;version=latest,\
	org.apache.ace.feedback.common;version=latest
-runfw: org.apache.felix.framework;version='[5.2.0,6)'
-runvm: -ea
-runbundles: osgi.cmpn,\
	org.apache.felix.dependencymanager,\
	org.apache.felix.configadmin,\
	org.apache.felix.eventadmin,\
	org.apache.felix.http.servlet-api,\
	org.apache.felix.http.jetty,\
	org.apache.felix.deploymentadmin,\
	org.apache.felix.prefs,\
	org.apache.felix.useradmin,\
	org.apache.felix.useradmin.filestore,\
	org.apache.felix.log,\
	org.apache.ace.test;version=latest,\
	org.apache.ace.http.listener;version=latest,\
	org.apache.ace.authentication.api;version=latest,\
	org.apache.ace.connectionfactory;version=latest,\
	org.apache.ace.scheduler.impl;version=latest,\
	org.apache.ace.scheduler.api;version=latest,\
	org.apache.ace.deployment.provider.api;version=latest,\
	org.apache.ace.discovery.api;version=latest,\
	org.apache.ace.discovery.property;version=latest,\
	org.apache.ace.identification.api;version=latest,\
	org.apache.ace.identification.property;version=latest,\
	org.apache.ace.deployment.api;version=latest,\
	org.apache.ace.deployment.deploymentadmin;version=latest,\
	org.apache.ace.deployment.servlet;version=latest,\
	org.apache.ace.deployment.task;version=latest,\
	org.apache.ace.deployment.task.base;version=latest,\
	org.apache.ace.deployment.streamgenerator;version=latest,\
	org.apache.ace.deployment.provider.base;version=latest,\
	org.apache.ace.range.api;version=latest,\
	org.apache.ace.log.api;version=latest,\
	org.apache.ace.log.server.store.api;version=latest,\
	org.apache.ace.log.server.store.file;version=latest,\
	org.apache.ace.repository.api;version=latest,\
	org.apache.ace.repository.impl;version=latest,\
	org.apache.ace.repository.servlets;version=latest,\
	org.apache.ace.obr.metadata;version=latest,\
	org.apache.ace.obr.servlet;version=latest,\
	org.apache.ace.obr.storage;version=latest,\
	org.apache.ace.client.automation;version=latest,\
	org.apache.ace.client.repository.api;version=latest,\
	org.apache.ace.client.repository.helper.base;version=latest,\
	org.apache.ace.client.repository.helper.bundle;version=latest,\
	org.apache.ace.client.repository.helper.configuration;version=latest,\
	org.apache.ace.client.repository.impl;version=latest,\
	org.apache.ace.feedback.common;version=latest
-runproperties: \
	org.apache.felix.eventadmin.Timeout=0,\
	org.apache.felix.log.storeDebug=true,\
    org.apache.felix.log.maxSize=-1,\
    org.osgi.framework.bootdelegation="com.yourkit.*,com.sun.*,sun.*,apple.*,com.apple.*"

Private-Package: org.apache.ace.it.repositoryadmin
Bundle-Version: 1.0.0
Bundle-Name: Apache ACE Client Repository itest
Bundle-Category: itest
Bundle-Description: Integration test bundle for the Apache ACE Client Repository
-baseline:
