git_server = User("git_server") repos_urls = {} for pkg in ("hello", "chat", "app"): git_server.cd(pkg) repos_urls[pkg] = git_server.current_folder git_server.git_init(readme=True) git_server.run("git config --bool core.bare true") # User bob puts some code and create packages bob = User("bob") for pkg in ("hello", "chat", "app"): repo = repos_urls[pkg] bob.git_clone(repo) bob.cd(pkg) bob.copy_code("sources/%s" % pkg) bob.git_commit() bob.git_push() # Every push fires a package pipeline package_pipeline(ci_server, repo, branch="master", upload="master") # User Alice does some changes and push alice = User("alice") pkg = "hello" repo = repos_urls[pkg] alice.git_clone(repo) alice.cd(pkg) alice.edit("src/hello.cpp", "World", "Moon") alice.git_commit() alice.git_push() package_pipeline(ci_server, repo, branch="master", upload="master") product_pipeline(ci_server)
repo_folder = os.path.basename(repository) with chdir(repo_folder): ci.run("git checkout %s" % branch) ci.run("conan create . user/testing") if branch == "master": ci.run("conan upload * -r=master --all --confirm") # Create 3 repos in the server git_server = User("git_server") repos_urls = {} for pkg in ("hello", "chat", "app"): git_server.cd(pkg) repos_urls[pkg] = git_server.current_folder git_server.git_init(readme=True) git_server.run("git config --bool core.bare true") # User bob puts some code and create packages bob = User("bob") for pkg in ("hello", "chat", "app"): repo = repos_urls[pkg] bob.git_clone(repo) bob.cd(pkg) bob.copy_code("sources/%s" % pkg) # bob.local_build() # bob.conan_create() bob.git_commit() bob.git_push() # Every push fires a package pipeline package_pipeline(ci_server, repo, "master")