Ejemplo n.º 1
0
					var app model.App

					output, err := cmd.Execute(`git clone %s`, url)
					Expect(err).NotTo(HaveOccurred(), output)
					// infer app directory from URL
					splits := strings.Split(url, "/")
					dir := strings.TrimSuffix(splits[len(splits)-1], ".git")
					os.Chdir(dir)
					// create with custom buildpack if needed
					var args []string
					if buildpack != "" {
						args = append(args, fmt.Sprintf("--buildpack %s", buildpack))
					}
					app = apps.Create(user, args...)
					defer apps.Destroy(user, app)
					git.Push(user, keyPath, app, banner)

				},

				// NOTE: Keep this list up-to-date with any example apps that are added
				// under the github/deis org, or any third-party apps that increase coverage
				// or prevent regressions.
				Entry("Clojure", "https://github.com/deis/example-clojure-ring.git", "",
					"Powered by Deis"),
				Entry("Go", "https://github.com/deis/example-go.git", "",
					"Powered by Deis"),
				Entry("Java", "https://github.com/deis/example-java-jetty.git", "",
					"Powered by Deis"),
				Entry("Multi", "https://github.com/deis/example-multi", "",
					"Heroku Multipack Test"),
				Entry("NodeJS", "https://github.com/deis/example-nodejs-express.git", "",
Ejemplo n.º 2
0
				Context("and has run `deis apps:create` from within that repo", func() {

					var app model.App

					BeforeEach(func() {
						os.Chdir("example-go")
						app = apps.Create(user)
					})

					AfterEach(func() {
						apps.Destroy(user, app)
					})

					Specify("that user can deploy that app using a git push", func() {
						git.Push(user, keyPath, app, "Powered by Deis")
					})

					Specify("that user can interrupt the deploy of the app and recover", func() {
						git.PushWithInterrupt(user, keyPath)

						git.PushUntilResult(user, keyPath,
							model.CmdResult{
								Out:      nil,
								Err:      []byte("Everything up-to-date"),
								ExitCode: 0,
							})
					})

					Specify("that user can deploy that app only once concurrently", func() {
						sess := git.StartPush(user, keyPath)
Ejemplo n.º 3
0
					output, err := cmd.Execute(`git clone https://github.com/deis/example-go.git`)
					Expect(err).NotTo(HaveOccurred(), output)
				})

				Context("and has run `deis apps:create` from within that repo", func() {

					var app model.App

					BeforeEach(func() {
						os.Chdir("example-go")
						app = apps.Create(user)
					})

					AfterEach(func() {
						apps.Destroy(user, app)
					})

					Specify("that user can deploy that app using a git push", func() {
						git.Push(user, keyPath)
					})

				})

			})

		})

	})

})