How to use init method of vcs Package

Best Syzkaller code snippet using vcs.init

allinone.go

Source:allinone.go Github

copy

Full Screen

...51 "vcs.taiyouxi.net/platform/planx/util/security"52 samsungutil "vcs.taiyouxi.net/platform/x/api_gateway/util"53 _ "vcs.taiyouxi.net/jws/gamex/modules/crossservice"54)55func init() {56 logs.Trace("allinone cmd loaded")57 cmds.Register(&cli.Command{58 Name: "allinone",59 Usage: "启动游戏AllInOne模式",60 Action: Start,61 Flags: []cli.Flag{62 cli.StringFlag{63 Name: "config, c",64 Value: "gate.toml",65 Usage: "Gate Configuration toml config, in {CWD}/conf/ or {AppPath}/conf",66 },67 cli.StringFlag{68 Name: "gidconfig, cg",69 Value: "gidinfo.toml",70 Usage: "Gid Configuration toml config, in {CWD}/conf/ or {AppPath}/conf",71 },72 cli.StringFlag{73 Name: "record, r",74 Value: "packetlog.xml",75 Usage: "Gate recording mode config, in {CWD}/conf/ or {AppPath}/conf",76 },77 cli.StringFlag{78 Name: "logiclog, ll",79 Value: "logiclog.xml",80 Usage: "log player logic logs, in {CWD}/conf/ or {AppPath}/conf",81 },82 cli.StringFlag{83 Name: "anticheatlog, hl",84 Value: "anticheatlog.xml",85 Usage: "log anticheat logs, in {CWD}/conf/ or {AppPath}/conf",86 },87 cli.StringFlag{88 Name: "multiplayer, mp",89 Value: "",90 Usage: "start allinone with multiplayer if multiplayer.toml exist, in {CWD}/conf/ or {AppPath}/conf",91 },92 cli.StringFlag{93 Name: "pprofport, pp",94 Value: "",95 Usage: "pprof port",96 },97 cli.StringFlag{98 Name: "iplimit, ip",99 Value: "iplimit.toml",100 Usage: "IpLimit Configuration toml config, in {CWD}/conf/ or {AppPath}/conf",101 },102 cli.BoolFlag{103 Name: "debug, d",104 Usage: "debug mode",105 },106 },107 })108}109type GameConfig struct {110 GameConfig game.Config111}112type JWSConfig struct {113 JWSConfig uutil.JWSConfig114}115type RankConfig struct {116 RankConfig modules.Config117}118type VivoConfig struct {119 VivoConfig vivo.VivoConfig120}121type SamsungConfig struct {122 SamsungConfig samsung.SamsungConfig123}124type GidConfig struct {125 GidConfig game.GidConfig126}127type ChatConfig struct {128 ChatConfig chat.Config129}130var IPLimit iplimitconfig.IPLimits131func Start(c *cli.Context) {132 util.PProfStart()133 logics.DebugTest()134 game.InitPayFeedBack()135 var recordCfgName string = c.String("record")136 config.NewConfig(recordCfgName, true, client.LoadPacketLogger)137 defer client.StopPacketLogger()138 var logiclogName string = c.String("logiclog")139 config.NewConfig(logiclogName, true, logiclog.PLogicLogger.ReturnLoadLogger())140 defer logiclog.PLogicLogger.StopLogger()141 var anticheatlogName string = c.String("anticheatlog")142 config.NewConfig(anticheatlogName, true, anticheatlog.PAntiCheatLogger.ReturnLoadLogger())143 defer anticheatlog.PAntiCheatLogger.StopLogger()144 cfgName := c.String("config")145 //For Game server146 var gameConfig GameConfig147 cfgApp := config.NewConfigToml(cfgName, &gameConfig)148 game.Cfg = gameConfig.GameConfig149 if cfgApp == nil {150 logs.Critical("\n")151 logs.Close()152 os.Exit(1)153 }154 //For Jws155 var jwsConfig JWSConfig156 cfgJws := config.NewConfigToml(cfgName, &jwsConfig)157 uutil.JwsCfg = jwsConfig.JWSConfig158 if cfgJws == nil {159 logs.Critical("\n")160 logs.Close()161 os.Exit(1)162 }163 //For Sentry164 var sentryConfig logs.SentryCfg165 config.NewConfigToml(cfgName, &sentryConfig)166 logs.InitSentryTags(sentryConfig.SentryConfig.DSN,167 map[string]string{168 "service": "gamex",169 "subcmd": "allinone",170 "sid": fmt.Sprint(game.Cfg.ShardId),171 "mode": game.Cfg.RunMode,172 },173 )174 logs.Info("Game Server Config loaded %v.", game.Cfg)175 util.SetTimeLocal(game.Cfg.TimeLocal)176 ipCfgName := c.String("iplimit")177 config.NewConfigToml(ipCfgName, &IPLimit)178 security.LoadConf(game.Cfg.LimitValid,179 game.Cfg.RateLimitUrlInfo,180 game.Cfg.AdminIPs)181 security.SetIPLimitCfg(IPLimit.IPLimit)182 security.Init()183 shards := make([]uint, 0, len(game.Cfg.ShardId))184 shard2StartTime := make(map[uint]string, len(game.Cfg.ServerLogicStartTime))185 for i, sid := range game.Cfg.ShardId {186 shards = append(shards, sid)187 shard2StartTime[sid] = game.Cfg.ServerLogicStartTime[i]188 }189 util.SetServerStartTimes(shard2StartTime)190 // For chat191 var chatConfig ChatConfig192 cfgChat := config.NewConfigToml(cfgName, &chatConfig)193 chat.Cfg = chatConfig.ChatConfig194 if cfgChat == nil {195 logs.Critical("\n")196 logs.Close()197 os.Exit(1)198 }199 chat.Cfg.Init()200 logs.Info("Chat Server Config loaded %v.", chat.Cfg)201 //For Rank202 var rankConfig RankConfig203 cfgRank := config.NewConfigToml(cfgName, &rankConfig)204 modules.Cfg = rankConfig.RankConfig205 if cfgRank == nil {206 logs.Critical("\n")207 logs.Close()208 os.Exit(1)209 }210 logs.Info("Rank Config loaded %v.", modules.Cfg)211 // For vivo212 var vivoConfig VivoConfig213 cfgVivo := config.NewConfigToml(cfgName, &vivoConfig)214 vivo.Cfg = vivoConfig.VivoConfig215 if cfgVivo == nil {216 logs.Critical("\n")217 logs.Close()218 os.Exit(1)219 }220 logs.Info("vivo Config loaded %v.", vivo.Cfg)221 // For samsung222 var samsungConfig SamsungConfig223 cfgSamsung := config.NewConfigToml(cfgName, &samsungConfig)224 samsung.Cfg = samsungConfig.SamsungConfig225 if cfgSamsung == nil {226 logs.Critical("\n")227 logs.Close()228 os.Exit(1)229 }230 logs.Info("samsung Config loaded %v.", samsung.Cfg)231 samsungutil.Init(samsung.Cfg.PrivateKey, samsung.Cfg.PublicKey)232 //For GidConfig233 var gidConfig GidConfig234 cfgGid := config.NewConfigToml(c.String("gidconfig"), &gidConfig)235 game.GidCfg = gidConfig.GidConfig236 if cfgGid == nil {237 logs.Critical("\n")238 logs.Close()239 os.Exit(1)240 }241 game.GidCfg.Init()242 logs.Info("Gid Config loaded %v.", game.GidCfg)243 mailcfg := mailhelper.MailConfig{244 DBDriver: game.Cfg.MailDBDriver,245 AWSRegion: game.Cfg.AWS_Region,246 DBName: game.Cfg.MailDBName,247 AWSAccessKey: game.Cfg.AWS_AccessKey,248 AWSSecretKey: game.Cfg.AWS_SecretKey,249 MongoDBUrl: game.Cfg.MailMongoUrl,250 }251 //For Mails252 global_mail.SetConfig(mailcfg)253 mail_sender.SetConfig(mailcfg)254 redeemCodeModule.SetConfig(255 game.Cfg.AWS_Region,256 game.Cfg.AWS_AccessKey,257 game.Cfg.AWS_SecretKey,258 game.Cfg.RedeemCodeMongoUrl,259 game.Cfg.RedeemCodeDriver,260 "RedeemCode")261 debug := c.Bool("debug")262 game.Cfg.LocalDebug = debug263 if debug {264 logs.Info("gamex run in debug!")265 }266 if !debug {267 // start etcd268 err := etcd.InitClient(gameConfig.GameConfig.EtcdEndPoint)269 if err != nil {270 logs.Error("etcd InitClient err %s", err.Error())271 logs.Critical("\n")272 logs.Close()273 os.Exit(1)274 }275 logs.Warn("etcd init success")276 if !game.Cfg.GetGid() {277 logs.Error("gamex GetGid fail")278 logs.Critical("\n")279 logs.Close()280 os.Exit(1)281 }282 if !game.Cfg.GetInfoFromEtcd() {283 logs.Error("gamex GetInfoFromEtcd fail")284 logs.Critical("\n")285 logs.Close()286 os.Exit(1)287 }288 // game cfg need to register to etcd289 if !game.Cfg.SyncInfo2Etcd() {...

Full Screen

Full Screen

main.go

Source:main.go Github

copy

Full Screen

...79}80// 平台初始化81func appAutoInit(tx *db.Session) (err error) {82 logger := logs.Get().WithField("func", "appAutoInit")83 logger.Infoln("initialize ...")84 if err := initAdmin(tx); err != nil {85 return errors.Wrap(err, "init admin account")86 }87 if err := initSysUser(tx); err != nil {88 return errors.Wrap(err, "init sys account")89 }90 if err := initSystemConfig(tx); err != nil {91 return errors.Wrap(err, "init system config")92 }93 if err := initVcs(tx); err != nil {94 return errors.Wrap(err, "init vcs")95 }96 if err := initRegistryVcs(tx); err != nil {97 return errors.Wrap(err, "init registry vcs")98 }99 if err := initTemplates(tx); err != nil {100 return errors.Wrap(err, "init meat template")101 }102 return nil103}104// initAdmin 初始化 admin 账号105// 该函数读取环境变量 IAC_ADMIN_EMAIL、 IAC_ADMIN_PASSWORD 来获取初始用户的 email 和 password,106// 如果 IAC_ADMIN_EMAIL 未设置则使用默认邮箱, IAC_ADMIN_PASSWORD 未设置则报错107func initAdmin(tx *db.Session) error {108 if ok, err := services.QueryUser(tx).Exists(); err != nil {109 return err110 } else if ok { // 己存在用户,跳过111 return nil112 }113 email := os.Getenv("IAC_ADMIN_EMAIL")114 password := os.Getenv("IAC_ADMIN_PASSWORD")115 if email == "" {116 email = consts.DefaultAdminEmail117 }118 // 通过邮箱查找账号,如果不存在则创建。119 admin, err := services.GetUserByEmail(tx, email)120 if err != nil && err.Code() != e.UserNotExists {121 return err122 } else if admin != nil { // 用户己存在123 return nil124 }125 if password == "" {126 return fmt.Errorf("environment variable 'IAC_ADMIN_PASSWORD' is not set")127 }128 hashedPassword, err := services.HashPassword(password)129 if err != nil {130 return err131 }132 logger := logs.Get()133 logger.Infof("create admin account, email: %s", email)134 _, err = services.CreateUser(tx, models.User{135 Name: email,136 Password: hashedPassword,137 Phone: "",138 Email: email,139 IsAdmin: true,140 })141 return err142}143// initSysUser 初始化 sys 账号144// 该函数读取环境变量 IAC_SYS_EMAIL, IAC_SYS_NAME 来获取初始系统用户的 email 和用户名145// 如果 IAC_SYS_EMAIL 未设置则使用 DefaultSysEmail 邮箱,IAC_SYS_NAME 未设置则使用默认系统用户名146func initSysUser(tx *db.Session) error {147 if ok, err := services.QueryUser(tx).Where("id = ?", consts.SysUserId).Exists(); err != nil {148 return err149 } else if ok { // 己存在用户,跳过150 return nil151 }152 email := os.Getenv("IAC_SYS_EMAIL")153 if email == "" {154 email = consts.DefaultSysEmail155 }156 name := os.Getenv("IAC_SYS_NAME")157 if name == "" {158 name = consts.DefaultSysName159 }160 // 通过邮箱查找账号,如果不存在则创建。161 sys, err := services.GetUserByEmail(tx, email)162 if err != nil && err.Code() != e.UserNotExists {163 return err164 } else if sys != nil { // 用户己存在165 return fmt.Errorf("sys email conflict")166 }167 logger := logs.Get()168 logger.Infof("create sys account, email: %s, name: %s", email, name)169 u := models.User{170 Name: name,171 Phone: "",172 Email: email,173 }174 u.Id = consts.SysUserId175 _, err = services.CreateUser(tx, u)176 return err177}178func initSystemConfig(tx *db.Session) (err error) {179 logger := logs.Get().WithField("func", "initSystemConfig")180 logger.Infoln("init system config...")181 initSysConfigs := []models.SystemCfg{182 {183 Name: models.SysCfgNameMaxJobsPerRunner,184 Value: "100",185 Description: "每个CT-Runner同时启动的最大容器数",186 }, {187 Name: models.SysCfgNamePeriodOfLogSave,188 Value: "Permanent",189 Description: "日志保存周期",190 }, {191 Name: models.SysCfgNameTaskStepTimeout,192 Value: "3600",193 Description: "步骤超时时间",194 },195 }196 tx = tx.Model(&models.SystemCfg{})197 for _, c := range initSysConfigs {198 if ok, err := tx.Where("name = ?", c.Name).Exists(); err != nil {199 return err200 } else if !ok {201 _, err = services.CreateSystemConfig(tx, c)202 if err != nil {203 return err204 }205 }206 }207 return nil208}209// initVcs 初始化系统默认 VCS210func initVcs(tx *db.Session) error {211 vcs := models.Vcs{212 OrgId: "",213 Name: consts.DefaultVcsName,214 VcsType: consts.GitTypeLocal,215 Status: "enable",216 Address: consts.LocalGitReposPath,217 VcsToken: "",218 }219 dbVcs, err := services.GetDefaultVcs(tx)220 if err != nil && !e.IsRecordNotFound(err) {221 return err222 }223 if dbVcs == nil || dbVcs.Id == "" { // 未创建224 _, err = services.CreateVcs(tx, vcs)225 if err != nil {226 return err227 }228 } else { // 己存在,进行更新229 vcs.Status = "" // 不更新状态230 _, err = tx.Model(&vcs).Where("id = ?", dbVcs.Id).Update(vcs)231 if err != nil {232 return err233 }234 }235 return nil236}237// initRegistryVcs 初始化 registry vcs238func initRegistryVcs(tx *db.Session) error {239 // 获取 registry vcs 服务的 http addr 配置240 var cfg models.SystemCfg241 var addr = configs.Get().RegistryAddr242 err := tx.Where("name = ?", models.SysCfgNamRegistryAddr).First(&cfg)243 if err == nil {244 addr = cfg.Value245 }246 vcs := models.Vcs{247 OrgId: "",248 Name: consts.RegistryVcsName,249 VcsType: consts.GitTypeRegistry,250 Status: "enable",251 Address: addr,252 VcsToken: "",253 }254 dbVcs := models.Vcs{}255 err = services.QueryVcsSample(tx.Where(&models.Vcs{Name: consts.RegistryVcsName})).Find(&dbVcs)256 if err != nil && !e.IsRecordNotFound(err) {257 return err258 }259 if dbVcs.Id == "" { // 未创建260 _, err = services.CreateVcs(tx, vcs)261 if err != nil {262 return err263 }264 } else { // 己存在,进行更新265 vcs.Status = "" // 不更新状态266 _, err = tx.Model(&vcs).Where("id = ?", dbVcs.Id).Update(vcs)267 if err != nil {268 return err269 }270 }271 return nil272}273func initTemplates(tx *db.Session) error {274 // TODO: 导入内置演示模板275 return nil276}277//func initSSHKeyPair() error {278// return sshkey.InitSSHKeyPair()279//}...

Full Screen

Full Screen

vcsInit.go

Source:vcsInit.go Github

copy

Full Screen

...22 "github.com/wso2/product-apim-tooling/import-export-cli/git"23 "github.com/wso2/product-apim-tooling/import-export-cli/utils"24)25var flagVCSInitForce bool // Forcefully create and replace the existing vcs.yaml file if exists26// "vcs init" command related usage Info27const vcsInitCmdLiteral = "init"28const vcsInitCmdShortDesc = "Initializes a GIT repository with API Controller"29const vcsInitCmdLongDesc = `Initializes a GIT repository with API Controller (apictl). Before start using a GIT repository 30for 'vcs' commands, the GIT repository should be initialized once via 'vcs init'. This will create a file 'vcs.yaml'31in the root location of the GIT repository, which is used by API Controller to uniquely identify the GIT repository. 32'vcs.yaml' should be committed to the GIT repository.`33const vcsInitCmdExamples = utils.ProjectName + ` ` + vcsCmdLiteral + ` ` + vcsInitCmdLiteral34// deployCmd represents the deploy command35var VcsInitCmd = &cobra.Command{36 Use: vcsInitCmdLiteral,37 Short: vcsInitCmdShortDesc,38 Long: vcsInitCmdLongDesc,39 Example: vcsInitCmdExamples,40 Run: func(cmd *cobra.Command, args []string) {41 utils.Logln(utils.LogPrefixInfo + vcsInitCmdLiteral + " called")42 err := git.InitializeRepo(flagVCSInitForce)43 if err != nil {44 utils.HandleErrorAndExit("Error initializing repository", err)45 }46 fmt.Println("Successfully initialized GIT repository")47 },48}49func init() {50 VCSCmd.AddCommand(VcsInitCmd)51 VcsInitCmd.Flags().BoolVarP(&flagVCSInitForce, "force", "f", false,52 "Forcefully reinitialize and replace vcs.yaml if already exists in the repository root.")53}...

Full Screen

Full Screen

init

Using AI Code Generation

copy

Full Screen

1import (2func main() {3 fmt.Println("Hello World!")4 vcs.Init()5}6import (7func Init() {8 fmt.Println("Init method")9}10import (11func TestInit(t *testing.T) {12 Init()13}14--- PASS: TestInit (0.00 seconds)

Full Screen

Full Screen

init

Using AI Code Generation

copy

Full Screen

1import (2func main() {3 fmt.Println("Hello, World!")4 vcs.Init()5}6import (7func Init() {8 fmt.Println("Init method called")9}10 /usr/local/go/src/pkg/vcs (from $GOROOT)11 /home/username/go/src/vcs (from $GOPATH)12import (13func main() {14 slice := []int{1, 2, 3, 4, 5}15 fmt.Println(reflect.ValueOf(slice).Len())16}17reflect.Value.Len(0x4b4c20, 0xc42000e020, 0x16, 0x0, 0x0)18main.main()19import (20func main() {21 ch := make(chan int)22 go func() {23 time.Sleep(1 * time.Second)24 }()25 fmt.Println("Waiting for channel")26 fmt.Println("Received")27}28main.main()29runtime.goexit()

Full Screen

Full Screen

init

Using AI Code Generation

copy

Full Screen

1import (2func main() {3 fmt.Println("Hello, world.")4 fmt.Println(vcs.Version)5}6import (7func init() {8 fmt.Println("init called")9}10var y float64 = float64(x)11y := float64(x)

Full Screen

Full Screen

init

Using AI Code Generation

copy

Full Screen

1import (2func main() {3 fmt.Println("Hello, playground")4 vcs.Init()5}6import (7func Init() {8 fmt.Println("Hello, playground")9}10import (11func TestInit(t *testing.T) {12 Init()13}

Full Screen

Full Screen

init

Using AI Code Generation

copy

Full Screen

1import (2func main() {3 fmt.Println("Hello, I am in main")4 vcs.Init()5}6import (7func Init() {8 fmt.Println("Hello, I am in Init")9}10import (11func TestInit(t *testing.T) {12 Init()13}14import (15func Init() {16 fmt.Println("Hello, I am in Init")17}18import (19func TestInit(t *testing.T) {20 Init()21}22import (23func main() {24 fmt.Println("Hello, I am in main")25 vcs.Init()26}

Full Screen

Full Screen

init

Using AI Code Generation

copy

Full Screen

1import (2func main() {3 fmt.Println("Hello World")4 vcs.Init()5}6import "fmt"7func Init() {8 fmt.Println("VCS Init")9}10import "testing"11func TestInit(t *testing.T) {12 Init()13}14require (

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful