From a6c9ad8575ff41f2b44785b7da1c806e6fb03716 Mon Sep 17 00:00:00 2001 From: theDemonCat Date: Sun, 20 Sep 2020 00:07:12 +0600 Subject: [PATCH 1/5] =?UTF-8?q?=D0=9D=D0=B0=D0=B1=D1=80=D0=BE=D1=81=D0=BE?= =?UTF-8?q?=D0=BA=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20init=20#1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 6 +++++ cmd/app.go | 23 +++++++++---------- cmd/cmdInit.go | 60 ++++++++++++++++++++++++++++++++++++++++++++------ 3 files changed, 69 insertions(+), 20 deletions(-) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..5caa0a7 --- /dev/null +++ b/Makefile @@ -0,0 +1,6 @@ +.PHONY: build + +build: + go build -v . + +.PHONY: test diff --git a/cmd/app.go b/cmd/app.go index 5a1b1c2..4c8be9e 100644 --- a/cmd/app.go +++ b/cmd/app.go @@ -43,11 +43,18 @@ type configApp struct { TempDir string Workspace string disableIncrement bool + workdir string + Storage struct { + Path string + User string + Password string + Extension string + } } -func NewApp(version string) *Application { +var config = &configApp{} - config := &configApp{} +func NewApp(version string) *Application { app := &Application{ config: config, @@ -119,17 +126,7 @@ func NewApp(version string) *Application { } func (app *Application) cmdInit(cmd *cli.Cmd) { - - cmd.LongDesc = `Данный режим работает по HTTP (REST API) с базой данных. - Возможности: - * самостоятельно получает список информационных баз к обновления; - * поддержание нескольких потоков обновления - * переодический/разовый опрос необходимости обновления - * отправка журнала обновления на url.` - - cmd.Action = func() { - //fmt.Printf("display account info for %s\n", *account) - } + app.CmdInit2(cmd) } func loadPlugins() { diff --git a/cmd/cmdInit.go b/cmd/cmdInit.go index 6f76a7f..45e9f68 100644 --- a/cmd/cmdInit.go +++ b/cmd/cmdInit.go @@ -2,19 +2,65 @@ package cmd import ( cli "github.com/jawher/mow.cli" + "github.com/khorevaa/r2gitsync/cmd/flags" ) // Sample use: vault creds reddit.com func (app *Application) CmdInit2(cmd *cli.Cmd) { - cmd.LongDesc = `Данный режим работает по HTTP (REST API) с базой данных. - Возможности: - * самостоятельно получает список информационных баз к обновления; - * поддержание нескольких потоков обновления - * переодический/разовый опрос необходимости обновления - * отправка журнала обновления на url.` + cmd.Spec = "PATH WORKDIR [ -U= ] [ -P= ] [ -E= ]" + + cmd.LongDesc = `Инициализация структуры нового хранилища git. Подготовка к синхронизации` + + flags.StringArg("PATH", + "", + "Путь к хранилищу конфигурации 1С."). + Env("GITSYNC_STORAGE_USER"). + Ptr(&config.Storage.Path).Apply(cmd, app.ctx) + + flags.StringArg("WORKDIR", + "", + " Адрес локального репозитория GIT.\n" + + "Каталог исходников внутри локальной копии git-репозитория. По умолчанию текущий каталог"). + Env("GITSYNC_WORKDIR"). + Ptr(&config.workdir).Apply(cmd, app.ctx) + + flags.StringOpt("U storage-user", + "Администратор", + "пользователь хранилища конфигурации (env $GITSYNC_STORAGE_USER) (по умолчанию Администратор)"). + Env("GITSYNC_STORAGE_USER"). + Ptr(&config.Storage.User).Apply(cmd, app.ctx) + + flags.StringOpt("E ext extension", + "", + "пароль пользователя хранилища конфигурации (env $GITSYNC_STORAGE_PASSWORD, $GITSYNC_STORAGE_PWD)"). + Env("GITSYNC_STORAGE_PASSWORD $GITSYNC_STORAGE_PWD"). + Ptr(&config.Storage.User).Apply(cmd, app.ctx) + + flags.StringOpt("P storage-pwd", + "", + " имя расширения для работы с хранилищем расширения (env $GITSYNC_EXTENSION)"). + Env("GITSYNC_EXTENSION"). + Ptr(&config.Storage.User).Apply(cmd, app.ctx) + // cmd.Action = func() { - //fmt.Printf("display account info for %s\n", *account) + initProject() } } + +func initProject() { + createFileAutors() + CreateFileVersion() +} + +func CreateFileVersion() { + // Get storage user + + // Vrite storage user to Autors +} + +func createFileAutors() { + // Create file Version +} + From 68169429c640cbf31d63e776355fbf5c57990ac2 Mon Sep 17 00:00:00 2001 From: theDemonCat Date: Sun, 20 Sep 2020 00:21:16 +0600 Subject: [PATCH 2/5] Added analise sonarqube --- sonar-project.properties | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 sonar-project.properties diff --git a/sonar-project.properties b/sonar-project.properties new file mode 100644 index 0000000..6b8760d --- /dev/null +++ b/sonar-project.properties @@ -0,0 +1,16 @@ +sonar.projectKey=r2gitsync +sonar.projectName=r2gitsync +sonar.host.url=https://open.sonar.checkbsl.org/ +sonar.projectVersion=0.0.0.1 +# GoLint report path, default value is report.xml +sonar.golint.reportPath=report.xml +# Cobertura like coverage report path, default value is coverage.xml +sonar.coverage.reportPath=coverage.xml +# if you want disabled the DTD verification for a proxy problem for example, true by default +sonar.coverage.dtdVerification=false +# JUnit like test report, default value is test.xml +sonar.test.reportPath=test.xml +sonar.sources=./ +sonar.tests=./ +sonar.test.inclusions=**/**_test.go +sonar.sources.inclusions=**/**.go \ No newline at end of file From ddd5b6ba7715afee2400500cb53a6e9c7e4cca37 Mon Sep 17 00:00:00 2001 From: theDemonCat Date: Sun, 20 Sep 2020 11:22:57 +0600 Subject: [PATCH 3/5] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=BE=D0=BF=D0=B5=D1=87=D0=B0=D1=82=D0=BA=D0=B8.=20?= =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB=20=D0=BF=D0=BE=D1=80?= =?UTF-8?q?=D1=8F=D0=B4=D0=BE=D0=BA=20=D0=BE=D0=BF=D1=86=D0=B8=D0=B9=20?= =?UTF-8?q?=D0=B2=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D0=BD=D0=BE=D0=B9?= =?UTF-8?q?=20=D1=81=D1=82=D1=80=D0=BE=D0=BA=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cmd/app.go | 15 +++++++-------- cmd/cmdInit.go | 47 ++++++++++++++++++++++------------------------- 2 files changed, 29 insertions(+), 33 deletions(-) diff --git a/cmd/app.go b/cmd/app.go index 4c8be9e..51ccc36 100644 --- a/cmd/app.go +++ b/cmd/app.go @@ -43,19 +43,18 @@ type configApp struct { TempDir string Workspace string disableIncrement bool - workdir string - Storage struct { - Path string - User string - Password string - Extension string + workdir string + Storage struct { + Path string + User string + Password string + Extension string } } -var config = &configApp{} - func NewApp(version string) *Application { + var config = &configApp{} app := &Application{ config: config, } diff --git a/cmd/cmdInit.go b/cmd/cmdInit.go index 45e9f68..e2d6dba 100644 --- a/cmd/cmdInit.go +++ b/cmd/cmdInit.go @@ -8,41 +8,39 @@ import ( // Sample use: vault creds reddit.com func (app *Application) CmdInit2(cmd *cli.Cmd) { - cmd.Spec = "PATH WORKDIR [ -U= ] [ -P= ] [ -E= ]" - + cmd.Spec = "[ -U= ] [ -P= ] [ -E= ] PATH WORKDIR" cmd.LongDesc = `Инициализация структуры нового хранилища git. Подготовка к синхронизации` - flags.StringArg("PATH", - "", - "Путь к хранилищу конфигурации 1С."). - Env("GITSYNC_STORAGE_USER"). - Ptr(&config.Storage.Path).Apply(cmd, app.ctx) - - flags.StringArg("WORKDIR", - "", - " Адрес локального репозитория GIT.\n" + - "Каталог исходников внутри локальной копии git-репозитория. По умолчанию текущий каталог"). - Env("GITSYNC_WORKDIR"). - Ptr(&config.workdir).Apply(cmd, app.ctx) - flags.StringOpt("U storage-user", "Администратор", - "пользователь хранилища конфигурации (env $GITSYNC_STORAGE_USER) (по умолчанию Администратор)"). + "пользователь хранилища конфигурации"). Env("GITSYNC_STORAGE_USER"). - Ptr(&config.Storage.User).Apply(cmd, app.ctx) + Ptr(&app.config.Storage.User).Apply(cmd, app.ctx) - flags.StringOpt("E ext extension", + flags.StringOpt("P storage-pwd", "", - "пароль пользователя хранилища конфигурации (env $GITSYNC_STORAGE_PASSWORD, $GITSYNC_STORAGE_PWD)"). + "пароль пользователя хранилища конфигурации"). Env("GITSYNC_STORAGE_PASSWORD $GITSYNC_STORAGE_PWD"). - Ptr(&config.Storage.User).Apply(cmd, app.ctx) + Ptr(&app.config.Storage.Password).Apply(cmd, app.ctx) - flags.StringOpt("P storage-pwd", + flags.StringOpt(" E ext extension", "", - " имя расширения для работы с хранилищем расширения (env $GITSYNC_EXTENSION)"). + " имя расширения для работы с хранилищем расширения"). Env("GITSYNC_EXTENSION"). - Ptr(&config.Storage.User).Apply(cmd, app.ctx) - // + Ptr(&app.config.Storage.Extension).Apply(cmd, app.ctx) + + flags.StringArg("PATH", + "", + "Путь к хранилищу конфигурации 1С."). + Env("GITSYNC_STORAGE_USER"). + Ptr(&app.config.Storage.Path).Apply(cmd, app.ctx) + + flags.StringArg("WORKDIR", + ".", + " Адрес локального репозитория GIT.\n"+ + "Каталог исходников внутри локальной копии git-репозитория. По умолчанию текущий каталог"). + Env("GITSYNC_WORKDIR"). + Ptr(&app.config.workdir).Apply(cmd, app.ctx) cmd.Action = func() { initProject() @@ -63,4 +61,3 @@ func CreateFileVersion() { func createFileAutors() { // Create file Version } - From f3391ad1a6d32be50665e15e65d705eda5979148 Mon Sep 17 00:00:00 2001 From: theDemonCat Date: Sun, 20 Sep 2020 15:12:06 +0600 Subject: [PATCH 4/5] =?UTF-8?q?=D0=94=D0=9E=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB?= =?UTF-8?q?=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2=D1=8B=D1=85=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB?= =?UTF-8?q?=D0=B5=D0=B9=20=D0=B2=20=D1=85=D1=80=D0=B0=D0=BD=D0=B8=D0=BB?= =?UTF-8?q?=D0=B8=D1=89=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ tests/fixtures/1cv8ddb.1CD | Bin 626688 -> 630784 bytes 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index c9d1315..4c45532 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,5 @@ out/ test_sync/ # Dependency directories (remove the comment below to include it) # vendor/ +tests/fixtures/ver +tests/fixtures/cache diff --git a/tests/fixtures/1cv8ddb.1CD b/tests/fixtures/1cv8ddb.1CD index abe626e7e2ea55d8de6a6e7c91a4f67d340fd8eb..ee88ff96ba9afa683d6cc5804fef2c48644dfdca 100644 GIT binary patch delta 10047 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 F`45PVL-+sy From 24311fc678f4dc28bdbcdf5687fda81062178492 Mon Sep 17 00:00:00 2001 From: theDemonCat Date: Sun, 20 Sep 2020 16:50:31 +0600 Subject: [PATCH 5/5] =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B2=D1=8B=D0=B9=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=B4=D1=85=D0=BE=D0=B4=20=D0=BA=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=BB=D1=83=D1=87=D0=B5=D0=BD=D0=B8=D1=8E=20=D0=B4=D0=B0=D0=BD?= =?UTF-8?q?=D0=BD=D1=8B=D1=85=20=D1=81=20=D1=85=D1=80=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D0=BB=D0=B8=D1=89=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cmd/app.go | 8 ++------ cmd/cmdInit.go | 39 ++++++++++++++++++++++++--------------- 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/cmd/app.go b/cmd/app.go index 51ccc36..7833037 100644 --- a/cmd/app.go +++ b/cmd/app.go @@ -8,6 +8,7 @@ import ( "github.com/khorevaa/r2gitsync/log" "github.com/khorevaa/r2gitsync/plugin" p "github.com/khorevaa/r2gitsync/plugins" + "github.com/v8platform/designer/repository" "io/ioutil" "os" "path" @@ -44,12 +45,7 @@ type configApp struct { Workspace string disableIncrement bool workdir string - Storage struct { - Path string - User string - Password string - Extension string - } + Repository *repository.Repository } func NewApp(version string) *Application { diff --git a/cmd/cmdInit.go b/cmd/cmdInit.go index e2d6dba..5680798 100644 --- a/cmd/cmdInit.go +++ b/cmd/cmdInit.go @@ -1,39 +1,43 @@ package cmd import ( + "fmt" cli "github.com/jawher/mow.cli" "github.com/khorevaa/r2gitsync/cmd/flags" + "github.com/khorevaa/r2gitsync/manager" + "github.com/v8platform/designer/repository" ) // Sample use: vault creds reddit.com func (app *Application) CmdInit2(cmd *cli.Cmd) { - cmd.Spec = "[ -U= ] [ -P= ] [ -E= ] PATH WORKDIR" + app.config.Repository = new(repository.Repository) + cmd.Spec = "[ -U= ] [ -P= ] PATH WORKDIR" cmd.LongDesc = `Инициализация структуры нового хранилища git. Подготовка к синхронизации` flags.StringOpt("U storage-user", "Администратор", "пользователь хранилища конфигурации"). Env("GITSYNC_STORAGE_USER"). - Ptr(&app.config.Storage.User).Apply(cmd, app.ctx) + Ptr(&app.config.Repository.User).Apply(cmd, app.ctx) flags.StringOpt("P storage-pwd", "", "пароль пользователя хранилища конфигурации"). Env("GITSYNC_STORAGE_PASSWORD $GITSYNC_STORAGE_PWD"). - Ptr(&app.config.Storage.Password).Apply(cmd, app.ctx) + Ptr(&app.config.Repository.Password).Apply(cmd, app.ctx) - flags.StringOpt(" E ext extension", - "", - " имя расширения для работы с хранилищем расширения"). - Env("GITSYNC_EXTENSION"). - Ptr(&app.config.Storage.Extension).Apply(cmd, app.ctx) + //flags.StringOpt(" E ext extension", + // "", + // " имя расширения для работы с хранилищем расширения"). + // Env("GITSYNC_EXTENSION"). + // Ptr(&app.config.Repository.Extension).Apply(cmd, app.ctx) flags.StringArg("PATH", "", "Путь к хранилищу конфигурации 1С."). Env("GITSYNC_STORAGE_USER"). - Ptr(&app.config.Storage.Path).Apply(cmd, app.ctx) + Ptr(&app.config.Repository.Path).Apply(cmd, app.ctx) flags.StringArg("WORKDIR", ".", @@ -43,21 +47,26 @@ func (app *Application) CmdInit2(cmd *cli.Cmd) { Ptr(&app.config.workdir).Apply(cmd, app.ctx) cmd.Action = func() { - initProject() + initProject(app) } } -func initProject() { - createFileAutors() - CreateFileVersion() +func initProject(app *Application) { + CreateFileVersion(app) } -func CreateFileVersion() { +func CreateFileVersion(app *Application) { // Get storage user + repo := manager.SyncRepository{ + Repository: *app.config.Repository, + Workdir: app.config.workdir, + } + repo.GetRepositoryHistory() + fmt.Print("INIT!!") // Vrite storage user to Autors } -func createFileAutors() { +func (app *Application) createFileAutors() { // Create file Version }