Capítulo 8. Implantando os Artefatos do Red Hat JBoss BPM Suite no Repositório S-RAMP (SOA Repository Artifact Model and Protocol)

Mesmo que o Red Hat JBoss BPM Suite e o S-RAMP sejam dois produtos independentes, é possível mover os artefatos entre eles. Você pode mover os artefatos do JBoss BPM Suite para o S-RAMP usando o Maven ou através de uma interface de usuário.
Esta seção fornece informações sobre esses dois processos.

8.1. Implantando os Artefatos do Red Hat JBoss BPM Suite no Repositório S-RAMP Usando Maven

Antes de implantar os artefatos do Red Hat JBoss BPM Suite no S-RAMP usando o Maven, você precisará habilitar o S-RAMP Maven Wagon. O Maven Wagon é um recurso chave que suporta o protocolo API REST baseado em S-RAMP Atom. Ao habilitar o S-RAMP Maven Wagon, os usuários serão capazes de acessar os artefatos a partir do repositório S-RAMP, como dependências, em um projeto Maven.
Habilite o S-RAMP Maven Wagon ao editar o arquivo pom.xml, como apresentado abaixo:
<build>
  <extensions>
    <extension>
      <groupId>org.overlord.sramp</groupId>
      <artifactId>s-ramp-wagon</artifactId>
      <version>${s-ramp-wagon.version}</version>
    </extension>
  </extensions>
</build>
Depois que o S-RAMP Maven Wagon é habilitado, você pode implantar os artefatos do JBoss BPM Suite no repositório S-RAMP. Para fazer isto, siga os passos abaixo:
  1. Clone o repositório git onde você salvou o projeto BPM Suite executando o seguinte comando:
    git clone http://localhost:8001/REPOSITORY_NAME
  2. Na linha de comando, mova para a pasta que contém o projeto.
  3. Siga as instruções em Red Hat JBoss Fuse Service Works 6 Development Guide, Volume 3: Governance, na seção Implantando no S-RAMP (Deploying to S-RAM). Use o URL do exemplo abaixo:
    <distributionManagement>
      <repository>
        <id>local-sramp-repo</id>
        <name>S-RAMP Releases Repository</name>
        <url>sramp://S-RAMP_SERVER_URL/s-ramp-server/</url>
      </repository>
      <snapshotRepository>
        <id>local-sramp-repo-snapshots</id>
        <name>S-RAMP Snapshots Repository</name>
        <url>sramp://S-RAMP_SERVER_URL/s-ramp-server/</url>
      </snapshotRepository>
    </distributionManagement>
    Com esses parâmetros de configuração, as implantações do Maven são enviadas diretamente para o repositório S-RAM, usando o API S-RAMP. Observe que os artefatos são adicionados ao repositório S-RAM com um tipo de artefato baseado no tipo Maven do projeto. Você pode substituir esse comportamente ao adicionar um parâmtero de consulta ao repositório URL no arquivo pom.xml. Por exemplo:
    <distributionManagement>
      <repository>
        <id>local-sramp-repo</id>
        <name>S-RAMP Releases Repository</name>
        <url>sramp://S-RAMP_SERVER_URL/s-ramp-server/?artifactType=KieJarArchive</url>
      </repository>
    </distributionManagement>
    
    O exemplo acima faz com que o artefato do Maven seja carregado com um tipo de artefato S-RAMP de KieJarArchive.
  4. Corrija o plug-in do maven no arquivo pom.xml e adicione a ele uma dependência como a seguir, no caso do projeto não conter as tabelas de decisão:
    <plugins>
        <plugin>
          <groupId>org.kie</groupId>
          <artifactId>kie-maven-plugin</artifactId>
          <version>6.0.2-redhat-6</version>
          <extensions>true</extensions>
          <dependencies>
              <dependency>
                  <groupId>org.jbpm</groupId>
                  <artifactId>jbpm-bpmn2</artifactId>
                  <version>6.0.2-redhat-6</version>
              </dependency>
          </dependencies>  
         </plugin>
        </plugins>
    
    Caso o projeto contenha tabelas de decisão, use essa dependência para o kie-maven-plugin:
    <plugins>
        <plugin>
          <groupId>org.kie</groupId>
          <artifactId>kie-maven-plugin</artifactId>
          <version>6.0.2-redhat-6</version>
          <extensions>true</extensions>
          <dependencies>
              <dependency>
                   <groupId>org.drools</groupId>
                   <artifactId>drools-decisiontables</artifactId>
                   <version>6.0.2-redhat-6</version>
               </dependency>
          </dependencies>  
         </plugin>
        </plugins>
    
  5. Execute uma implantação limpa do maven usando o seguinte comando:
    mvn -s sramp-settings.xml deploy
    .

Nota

Para a implantação do Maven no repositório S-RAMP, é necessário ter as credenciais definidas no arquivo settings.xml. Para mais detalhes sobre credenciais, consulte a documentação sobre Autenticação em Red Hat JBoss Fuse Service Works (FSW).