You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@devlake.apache.org by ab...@apache.org on 2022/10/24 06:44:53 UTC
[incubator-devlake] branch main updated: refactor: migration scripts of ICLA and Gitextractor (#3557)
This is an automated email from the ASF dual-hosted git repository.
abeizn pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git
The following commit(s) were added to refs/heads/main by this push:
new 453e3a8e refactor: migration scripts of ICLA and Gitextractor (#3557)
453e3a8e is described below
commit 453e3a8e263ffd3a3f662af7da30ec6378f46384
Author: mindlesscloud <li...@merico.dev>
AuthorDate: Mon Oct 24 14:44:49 2022 +0800
refactor: migration scripts of ICLA and Gitextractor (#3557)
---
plugins/gitextractor/gitextractor.go | 7 -------
.../migrationscripts/20221021_add_icla_committer.go} | 19 +++++++++++++++----
.../models/migrationscripts/archived/committer.go} | 15 ++++++++++-----
.../models/migrationscripts/register.go | 10 +++++-----
plugins/icla/plugin_main.go | 17 +++++++++--------
5 files changed, 39 insertions(+), 29 deletions(-)
diff --git a/plugins/gitextractor/gitextractor.go b/plugins/gitextractor/gitextractor.go
index e15f7a1e..5a3866e3 100644
--- a/plugins/gitextractor/gitextractor.go
+++ b/plugins/gitextractor/gitextractor.go
@@ -21,10 +21,8 @@ import (
"strings"
"github.com/apache/incubator-devlake/errors"
- "github.com/apache/incubator-devlake/migration"
"github.com/apache/incubator-devlake/plugins/core"
"github.com/apache/incubator-devlake/plugins/gitextractor/models"
- "github.com/apache/incubator-devlake/plugins/gitextractor/models/migrationscripts"
"github.com/apache/incubator-devlake/plugins/gitextractor/parser"
"github.com/apache/incubator-devlake/plugins/gitextractor/store"
"github.com/apache/incubator-devlake/plugins/gitextractor/tasks"
@@ -33,7 +31,6 @@ import (
var _ core.PluginMeta = (*GitExtractor)(nil)
var _ core.PluginTask = (*GitExtractor)(nil)
-var _ core.Migratable = (*GitExtractor)(nil)
type GitExtractor struct{}
@@ -81,10 +78,6 @@ func (plugin GitExtractor) Close(taskCtx core.TaskContext) errors.Error {
return nil
}
-func (plugin GitExtractor) MigrationScripts() []migration.Script {
- return migrationscripts.All()
-}
-
func (plugin GitExtractor) RootPkgPath() string {
return "github.com/apache/incubator-devlake/plugins/gitextractor"
}
diff --git a/plugins/gitextractor/models/migrationscripts/register.go b/plugins/icla/models/migrationscripts/20221021_add_icla_committer.go
similarity index 61%
copy from plugins/gitextractor/models/migrationscripts/register.go
copy to plugins/icla/models/migrationscripts/20221021_add_icla_committer.go
index ddb59c0a..c8fe69e5 100644
--- a/plugins/gitextractor/models/migrationscripts/register.go
+++ b/plugins/icla/models/migrationscripts/20221021_add_icla_committer.go
@@ -18,10 +18,21 @@ limitations under the License.
package migrationscripts
import (
- "github.com/apache/incubator-devlake/migration"
+ "github.com/apache/incubator-devlake/errors"
+ "github.com/apache/incubator-devlake/plugins/core"
+ "github.com/apache/incubator-devlake/plugins/icla/models/migrationscripts/archived"
)
-// All return all the migration scripts
-func All() []migration.Script {
- return []migration.Script{}
+type addIclaCommitter struct{}
+
+func (script *addIclaCommitter) Up(basicRes core.BasicRes) errors.Error {
+ return basicRes.GetDal().AutoMigrate(&archived.IclaCommitter{})
+}
+
+func (*addIclaCommitter) Version() uint64 {
+ return 20221021183022
+}
+
+func (*addIclaCommitter) Name() string {
+ return "create _tool_icla_committers"
}
diff --git a/plugins/gitextractor/models/migrationscripts/register.go b/plugins/icla/models/migrationscripts/archived/committer.go
similarity index 70%
copy from plugins/gitextractor/models/migrationscripts/register.go
copy to plugins/icla/models/migrationscripts/archived/committer.go
index ddb59c0a..23e371be 100644
--- a/plugins/gitextractor/models/migrationscripts/register.go
+++ b/plugins/icla/models/migrationscripts/archived/committer.go
@@ -15,13 +15,18 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
-package migrationscripts
+package archived
import (
- "github.com/apache/incubator-devlake/migration"
+ "github.com/apache/incubator-devlake/models/migrationscripts/archived"
)
-// All return all the migration scripts
-func All() []migration.Script {
- return []migration.Script{}
+type IclaCommitter struct {
+ UserName string `gorm:"primaryKey;type:varchar(255)"`
+ Name string `gorm:"primaryKey;type:varchar(255)"`
+ archived.NoPKModel
+}
+
+func (IclaCommitter) TableName() string {
+ return "_tool_icla_committer"
}
diff --git a/plugins/gitextractor/models/migrationscripts/register.go b/plugins/icla/models/migrationscripts/register.go
similarity index 84%
rename from plugins/gitextractor/models/migrationscripts/register.go
rename to plugins/icla/models/migrationscripts/register.go
index ddb59c0a..37988830 100644
--- a/plugins/gitextractor/models/migrationscripts/register.go
+++ b/plugins/icla/models/migrationscripts/register.go
@@ -17,11 +17,11 @@ limitations under the License.
package migrationscripts
-import (
- "github.com/apache/incubator-devlake/migration"
-)
+import "github.com/apache/incubator-devlake/plugins/core"
// All return all the migration scripts
-func All() []migration.Script {
- return []migration.Script{}
+func All() []core.MigrationScript {
+ return []core.MigrationScript{
+ new(addIclaCommitter),
+ }
}
diff --git a/plugins/icla/plugin_main.go b/plugins/icla/plugin_main.go
index ce7fee89..e9125ccf 100644
--- a/plugins/icla/plugin_main.go
+++ b/plugins/icla/plugin_main.go
@@ -19,11 +19,12 @@ package main
import (
"fmt"
- "github.com/apache/incubator-devlake/errors"
- "github.com/apache/incubator-devlake/plugins/helper"
+ "github.com/apache/incubator-devlake/errors"
"github.com/apache/incubator-devlake/plugins/core"
+ "github.com/apache/incubator-devlake/plugins/helper"
"github.com/apache/incubator-devlake/plugins/icla/models"
+ "github.com/apache/incubator-devlake/plugins/icla/models/migrationscripts"
"github.com/apache/incubator-devlake/plugins/icla/tasks"
"github.com/apache/incubator-devlake/runner"
"github.com/spf13/cobra"
@@ -36,6 +37,7 @@ var _ core.PluginMeta = (*Icla)(nil)
var _ core.PluginInit = (*Icla)(nil)
var _ core.PluginTask = (*Icla)(nil)
var _ core.PluginApi = (*Icla)(nil)
+var _ core.PluginMigration = (*Icla)(nil)
var _ core.CloseablePluginTask = (*Icla)(nil)
// PluginEntry is a variable exported for Framework to search and load
@@ -54,12 +56,7 @@ func (plugin Icla) Description() string {
}
func (plugin Icla) Init(config *viper.Viper, logger core.Logger, db *gorm.DB) errors.Error {
- // AutoSchemas is a **develop** script to auto migrate models easily.
- // FIXME Don't submit it as a open source plugin
- return errors.Convert(db.Migrator().AutoMigrate(
- // TODO add your models in here
- &models.IclaCommitter{},
- ))
+ return nil
}
func (plugin Icla) SubTaskMetas() []core.SubTaskMeta {
@@ -92,6 +89,10 @@ func (plugin Icla) RootPkgPath() string {
return "github.com/apache/incubator-devlake/plugins/icla"
}
+func (plugin Icla) MigrationScripts() []core.MigrationScript {
+ return migrationscripts.All()
+}
+
func (plugin Icla) ApiResources() map[string]map[string]core.ApiResourceHandler {
return nil
}