[Title] Added new user "sync-manager" for package synchronization
authordonghee yang <donghee.yang@samsung.com>
Fri, 19 Apr 2013 06:06:27 +0000 (15:06 +0900)
committerdonghee yang <donghee.yang@samsung.com>
Fri, 19 Apr 2013 06:06:27 +0000 (15:06 +0900)
src/build_server/BuildServer.rb
src/build_server/PackageSync.rb

index 1918615df2dde0f394b558c3062c7bb5e73cbbc6..e153e7ecd7e78e1a365102dacb6bd97a4ed93394 100644 (file)
@@ -422,7 +422,7 @@ class BuildServer
                        if not row.nil? then return false end
                        row = db.select_one("SELECT id FROM distributions WHERE name='#{dist}'")
                        dist_id = row['id']
-                       db.do "INSERT INTO sync_pkg_servers (pkgsvr_url,period,distribution_id) VALUES('#{url}','#{@pkg_sync_period}',#{dist_id})"
+                       db.do "INSERT INTO sync_pkg_servers (pkgsvr_url,period,distribution_id) VALUES('#{url}',600,#{dist_id})"
                end
 
                return true
@@ -633,12 +633,18 @@ class BuildServer
                                                        "ALTER TABLE distributions ADD pkgsvr_password VARCHAR(64)"]
                        @db_migrate[2]=["ALTER TABLE projects ADD COLUMN status VARCHAR(32) NOT NULL DEFAULT 'OPEN'"]
                        @db_migrate[3]=["CREATE TABLE job_timestamps (id INTEGER PRIMARY KEY #{db_inc()}, job_id INTEGER, stamp_name VARCHAR(64), stamp_time DATETIME)#{db_post_fix()}",
-                                                       "ALTER TABLE jobs ADD COLUMN error_code VARCHAR(32)"]
+                                                       "ALTER TABLE jobs ADD COLUMN error_code VARCHAR(32)",
+                                                       "INSERT INTO users (name,email,password_hash,password_salt) VALUES ('sync-manager','sync-manager@user','$2a$10$H.w3ssI9KfuvNEXXp1qxD.b3Wm8alJG.HXviUofe4nErDn.TKUAka','$2a$10$H.w3ssI9KfuvNEXXp1qxD.')",
+                                                       "INSERT INTO user_groups (user_id, group_id) SELECT users.id,groups.id FROM users,groups WHERE users.email = 'sync-manager@user' and groups.name = 'admin'"
+                                                       ]
                else
                        @db_migrate[1]=["ALTER TABLE distributions ADD pkgsvr_password VARCHAR(64)"]
                        @db_migrate[2]=["ALTER TABLE projects ADD COLUMN status VARCHAR(32) NOT NULL DEFAULT 'OPEN'"]
                        @db_migrate[3]=["CREATE TABLE job_timestamps (id INTEGER PRIMARY KEY #{db_inc()}, job_id INTEGER, stamp_name VARCHAR(64), stamp_time DATETIME)#{db_post_fix()}",
-                                                       "ALTER TABLE jobs ADD COLUMN error_code VARCHAR(32)"]
+                                                       "ALTER TABLE jobs ADD COLUMN error_code VARCHAR(32)",
+                                                       "INSERT INTO users (name,email,password_hash,password_salt) VALUES ('sync-manager','sync-manager@user','$2a$10$H.w3ssI9KfuvNEXXp1qxD.b3Wm8alJG.HXviUofe4nErDn.TKUAka','$2a$10$H.w3ssI9KfuvNEXXp1qxD.')",
+                                                       "INSERT INTO user_groups (user_id, group_id) SELECT users.id,groups.id FROM users,groups WHERE users.email = 'sync-manager@user' and groups.name = 'admin'"
+                                                       ]
                end
        end
 
@@ -727,8 +733,10 @@ class BuildServer
                                        CONSTRAINT fk_users_has_groups_groups1 FOREIGN KEY ( group_id ) REFERENCES groups ( id )) #{post_fix}"
 
                        db.do "INSERT INTO users (name,email,password_hash,password_salt) VALUES ('administrators','admin@user','$2a$10$H.w3ssI9KfuvNEXXp1qxD.b3Wm8alJG.HXviUofe4nErDn.TKUAka','$2a$10$H.w3ssI9KfuvNEXXp1qxD.')"
+                       db.do "INSERT INTO users (name,email,password_hash,password_salt) VALUES ('sync-mananger','sync-manager@user','$2a$10$H.w3ssI9KfuvNEXXp1qxD.b3Wm8alJG.HXviUofe4nErDn.TKUAka','$2a$10$H.w3ssI9KfuvNEXXp1qxD.')"
                        db.do "INSERT INTO groups (name, admin, description) VALUES ('admin','TRUE','')"
                        db.do "INSERT INTO user_groups (user_id, group_id) SELECT users.id,groups.id FROM users,groups WHERE users.email = 'admin@user' and groups.name = 'admin'"
+                       db.do "INSERT INTO user_groups (user_id, group_id) SELECT users.id,groups.id FROM users,groups WHERE users.email = 'sync-manager@user' and groups.name = 'admin'"
 
                        # PROJECTS
                        CommonProject.create_table(db, inc, post_fix)
index bec3b913907f6efcc638476044e6ffca90c25221..0bfec44a3cc389e6b036cc5d312593a092579ea1 100644 (file)
@@ -50,6 +50,7 @@ class PackageSyncAction < Action
                @sync_root = "#{@server.path}/sync/#{my_id}"
                @download_path = "#{@sync_root}/remote"
                @original_path = "#{@sync_root}/main"
+               @user_id = nil
        end
 
 
@@ -68,6 +69,8 @@ class PackageSyncAction < Action
 
                main_url = @server.distmgr.get_distribution(@dist_name).pkgsvr_url
                @main_client = Client.new( main_url, @original_path, @server.log )
+
+               @user_id = @server.check_user_id_from_email("sync-manager@user")
        end
 
 
@@ -108,6 +111,7 @@ class PackageSyncAction < Action
                                        next
                                end
                                new_job.priority = CommonJob::AUTO_JOB_PRIORITY
+                               new_job.user_id = @user_id if @user_id != -1
 
                                # add job
                                @server.jobmgr.commit_job(new_job)