Move to gh actions (#2)

* Move to gh actions

* Fix rebar and pom

* Remove build_utils

Co-authored-by: Inal Arsanukaev <inalarsanukaev@192.168.1.3>
This commit is contained in:
Inal Arsanukaev 2022-01-20 10:59:01 +03:00 committed by GitHub
parent 39d8513ced
commit 432e0376fe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 170 additions and 108 deletions

29
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,29 @@
name: Build Artifact
on:
pull_request:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-20.04
steps:
- name: Install thrift
uses: valitydev/action-setup-thrift@v0.0.1
- name: Checkout Repo
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set up Maven
uses: actions/setup-java@v2
with:
java-version: '15'
distribution: 'adopt'
- name: Retrieve commit info
run: |
echo "::set-output name=COMMIT_NUMBER::$(git rev-list HEAD --count)"
echo "::set-output name=SHA_7::${GITHUB_SHA::7}"
id: commit_info
- name: Build package
run: mvn --batch-mode -Dcommit.number=${{ steps.commit_info.outputs.COMMIT_NUMBER }} -Drevision="1.${{ steps.commit_info.outputs.COMMIT_NUMBER }}-${{ steps.commit_info.outputs.SHA_7 }}" clean compile -f pom.xml

31
.github/workflows/deploy.yml vendored Normal file
View File

@ -0,0 +1,31 @@
name: Deploy Artifact
on:
push:
branches:
- 'master'
- 'main'
jobs:
deploy:
runs-on: ubuntu-20.04
steps:
- name: Install thrift
uses: valitydev/action-setup-thrift@v0.0.1
- name: Checkout Repo
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Retrieve commit info
run: |
echo "::set-output name=COMMIT_NUMBER::$(git rev-list HEAD --count)"
echo "::set-output name=SHA_7::${GITHUB_SHA::7}"
id: commit_info
- name: Deploy package
uses: valitydev/action-deploy-jdk-package@v1.0.12
with:
server-username: ${{ secrets.OSSRH_USERNAME }}
server-password: ${{ secrets.OSSRH_TOKEN }}
deploy-secret-key: ${{ secrets.OSSRH_GPG_SECRET_KEY }}
deploy-secret-key-password: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
maven-args: '-Dcommit.number=${{ steps.commit_info.outputs.COMMIT_NUMBER }} -Drevision="1.${{ steps.commit_info.outputs.COMMIT_NUMBER }}-${{ steps.commit_info.outputs.SHA_7 }}"'

37
.github/workflows/erlang-pr.yml vendored Normal file
View File

@ -0,0 +1,37 @@
name: Erlang
on:
pull_request:
branches: [ '*' ]
push:
branches: [ master ]
jobs:
build:
name: Build and verify
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: valitydev/action-setup-thrift@b457b89c7e1e960ea354f510bce69a725d16c556
with:
thrift-version: '0.14.2'
- uses: erlef/setup-beam@v1.9
id: beam
with:
otp-version: '24'
rebar3-version: '3.18'
- name: Restore PLT cache
uses: actions/cache@v2
id: plt-cache
with:
key: |
${{ runner.os }}-${{ steps.beam.outputs.otp-version }}-plt
path: |
_build/default/rebar3_*_plt
- run: rebar3 compile
- run: rebar3 xref
- run: rebar3 dialyzer

3
.gitmodules vendored
View File

@ -1,3 +0,0 @@
[submodule "build_utils"]
path = build_utils
url = git@github.com:rbkmoney/build_utils

26
Jenkinsfile vendored
View File

@ -1,26 +0,0 @@
#!groovy
// -*- mode: groovy -*-
build('org-management-proto', 'docker-host') {
checkoutRepo()
loadBuildUtils()
def pipeDefault
def gitUtils
runStage('load pipeline') {
env.JENKINS_LIB = "build_utils/jenkins_lib"
pipeDefault = load("${env.JENKINS_LIB}/pipeDefault.groovy")
pipeJavaProto = load("${env.JENKINS_LIB}/pipeJavaProto.groovy")
gitUtils = load("${env.JENKINS_LIB}/gitUtils.groovy")
}
pipeDefault() {
runStage('compile') {
withGithubPrivkey {
sh "make wc_compile"
}
}
env.skipSonar = 'true'
pipeJavaProto()
}
}

View File

@ -1,41 +0,0 @@
THRIFT = $(or $(shell which thrift), $(error "`thrift' executable missing"))
REBAR = $(shell which rebar3 2>/dev/null || which ./rebar3)
SUBMODULES = build_utils
SUBTARGETS = $(patsubst %,%/.git,$(SUBMODULES))
UTILS_PATH := build_utils
TEMPLATES_PATH := .
SERVICE_NAME := org-management-proto
# Build image tag to be used
BUILD_IMAGE_TAG := 917afcdd0c0a07bf4155d597bbba72e962e1a34a
CALL_ANYWHERE := \
all submodules compile clean distclean
CALL_W_CONTAINER := $(CALL_ANYWHERE)
all: compile
-include $(UTILS_PATH)/make_lib/utils_container.mk
.PHONY: $(CALL_W_CONTAINER)
# CALL_ANYWHERE
$(SUBTARGETS): %/.git: %
git submodule update --init $<
touch $@
submodules: $(SUBTARGETS)
compile: submodules
$(REBAR) compile
clean:
$(REBAR) clean
distclean:
$(REBAR) clean -a
rm -rf _build
include $(UTILS_PATH)/make_lib/java_proto.mk

@ -1 +0,0 @@
Subproject commit e6b981649e073a2dbf646ab491212a2c951aeb19

67
pom.xml
View File

@ -5,53 +5,77 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.rbkmoney</groupId>
<artifactId>parent</artifactId>
<version>1.0.5</version>
<groupId>dev.vality</groupId>
<artifactId>library-parent-pom</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>org-management-proto</artifactId>
<version>1.0.0</version>
<version>${revision}</version>
<packaging>jar</packaging>
<name>Org Management</name>
<description>Generates jar artifact containing compiled thrift classes based on generated thrift IDL files</description>
<url>https://github.com/rbkmoney/org-management-proto.git</url>
<name>org-management</name>
<description>Generates jar artifact containing compiled thrift classes based on generated thrift IDL files
</description>
<url>https://github.com/valitydev/org-management-proto</url>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
</licenses>
<developers>
<developer>
<organization>RBK.money</organization>
<organizationUrl>https://rbk.money</organizationUrl>
<email>devs@vality.dev</email>
<organization>Vality</organization>
<organizationUrl>https://vality.dev</organizationUrl>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/rbkmoney/org-management-proto.git</connection>
<developerConnection>scm:git:ssh://github.com/rbkmoney/org-management-proto.git</developerConnection>
<url>https://github.com/rbkmoney/org-management-proto/tree/master</url>
<connection>scm:git:git://github.com/valitydev/org-management-proto</connection>
<developerConnection>scm:git:ssh://github.com/valitydev/org-management-proto</developerConnection>
<url>https://github.com/valitydev/org-management-proto/tree/master</url>
</scm>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<revision>SNAPSHOT</revision>
</properties>
<dependencies>
<dependency>
<groupId>com.rbkmoney.woody</groupId>
<groupId>dev.vality.woody</groupId>
<artifactId>woody-thrift</artifactId>
<version>[1.1.21,)</version>
<version>1.0.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.rbkmoney</groupId>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>dev.vality</groupId>
<artifactId>bouncer-proto</artifactId>
<version>1.3-1922076</version>
<version>1.30-3b5927d</version>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<resources>
<resource>
<directory>${project.basedir}/proto</directory>
<targetPath>${project.build.outputDirectory}/proto</targetPath>
<includes>
<include>*.thrift</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
<plugins>
<!-- THRIFT -->
<plugin>
@ -73,11 +97,10 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.0.0</version>
<version>3.2.4</version>
<executions>
<execution>
<phase>package</phase>
@ -87,8 +110,8 @@
<configuration>
<relocations>
<relocation>
<pattern>com.rbkmoney.orgmanagement</pattern>
<shadedPattern>com.rbkmoney.orgmanagement.v${commit.number}</shadedPattern>
<pattern>dev.vality.damsel</pattern>
<shadedPattern>dev.vality.damsel.v${commit.number}</shadedPattern>
</relocation>
</relocations>
<shadedArtifactAttached>true</shadedArtifactAttached>
@ -100,4 +123,4 @@
</plugins>
</build>
</project>
</project>

View File

@ -1,4 +1,4 @@
namespace java com.rbkmoney.orgmanagement
namespace java dev.vality.orgmanagement
namespace erlang orgmgmt
include "domain.thrift"
@ -17,7 +17,7 @@ service AuthContextProvider {
* Предполагается, что контекст будет содержать информацию о пользователе, которую можно
* уместить в [`context_v1.User`][1].
*
* [1]: https://github.com/rbkmoney/bouncer-proto/blob/97dcad6f/proto/context_v1.thrift#L78
* [1]: https://github.com/valitydev/bouncer-proto/blob/97dcad6f/proto/context_v1.thrift#L78
*/
context.ContextFragment GetUserContext (1: domain.UserID id) throws (
1: UserNotFound ex1

View File

@ -1,4 +1,4 @@
namespace java com.rbkmoney.orgmanagement
namespace java dev.vality.orgmanagement
namespace erlang orgmgmt
typedef string UserID

View File

@ -27,7 +27,7 @@
{deps, [
{bouncer_proto,
{git, "git@github.com:rbkmoney/bouncer-proto.git",
{git, "https://github.com/valitydev/bouncer-proto.git",
{branch, "master"}
}
}
@ -58,20 +58,18 @@
{plugins, [
{rebar3_thrift_compiler,
{git, "https://github.com/rbkmoney/rebar3_thrift_compiler.git", {tag, "0.3.1"}}}
{git, "https://github.com/valitydev/rebar3_thrift_compiler.git", {branch, "master"}}}
]}.
{provider_hooks, [
{pre, [
{compile, {thrift, compile}},
{clean , {thrift, clean}}
{clean , {thrift, clean }}
]}
]}.
{thrift_compiler_opts, [
{in_dir, "proto"},
{in_files, [
"auth_context_provider.thrift"
]},
{gen, "erlang:scoped_typenames,app_prefix=orgmgmt"}
{in_files, all},
{gen, "erlang:scoped_typenames"}
]}.

View File

@ -1,4 +1,4 @@
[{<<"bouncer_proto">>,
{git,"git@github.com:rbkmoney/bouncer-proto.git",
{ref,"97dcad6f2f2706f269188722bc2419246d38823b"}},
{git,"https://github.com/valitydev/bouncer-proto",
{ref,"3b5927d4ee59983e855f87ddaee2aac4deeae0fe"}},
0}].

18
renovate.json Normal file
View File

@ -0,0 +1,18 @@
{
"extends": [
"config:base"
],
"packageRules": [
{
"matchPackagePatterns": [
"*"
],
"matchUpdateTypes": [
"minor",
"patch"
],
"groupName": "all non-major dependencies",
"groupSlug": "all-minor-patch"
}
]
}

View File

@ -5,8 +5,5 @@
kernel,
stdlib,
bouncer_proto
]},
{maintainers, [
"Andrey Mayorov <a.mayorov@rbkmoney.com>"
]}
]}.