Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
251dcf2
Update nodejs to version v310
Sep 13, 2025
c57d1ec
Merge pull request #1608 from gliderlabs/update-nodejs-from-v309-to-310
josegonzalez Sep 14, 2025
ac1be5d
chore(deps): bump puma in /buildpacks/buildpack-ruby/tests/ruby-sinatra
dependabot[bot] Sep 15, 2025
67fd40b
Update gradle to version v46
Sep 15, 2025
9f1faae
Merge pull request #1610 from gliderlabs/update-gradle-from-v45-to-46
josegonzalez Sep 15, 2025
e9b308e
Merge pull request #1609 from gliderlabs/dependabot/bundler/buildpack…
josegonzalez Sep 15, 2025
4c2cb40
Update gradle to version v47
Sep 16, 2025
ed69669
Update go to version v213
Sep 16, 2025
d3a5f99
Merge pull request #1611 from gliderlabs/update-gradle-from-v46-to-47
josegonzalez Sep 16, 2025
77a9b4b
Merge pull request #1612 from gliderlabs/update-go-from-v212-to-213
josegonzalez Sep 16, 2025
b586c94
Update ruby to version v321
Sep 17, 2025
69fe425
Merge pull request #1613 from gliderlabs/update-ruby-from-v320-to-321
josegonzalez Sep 17, 2025
92e8416
Update gradle to version v48
Sep 18, 2025
aacbe8a
Update python to version v308
Sep 19, 2025
bc4e9c0
Merge pull request #1615 from gliderlabs/update-python-from-v307-to-308
josegonzalez Sep 20, 2025
09c1ff6
Merge pull request #1614 from gliderlabs/update-gradle-from-v47-to-48
josegonzalez Sep 20, 2025
1807a7b
Update python to version v309
Sep 20, 2025
14b69ef
Update php to version v274
Sep 20, 2025
ca663f2
Merge pull request #1617 from gliderlabs/update-php-from-v273-to-274
josegonzalez Sep 21, 2025
5d1f208
Merge pull request #1616 from gliderlabs/update-python-from-v308-to-309
josegonzalez Sep 21, 2025
f4932cd
chore(deps-dev): bump heroku/heroku-buildpack-php
dependabot[bot] Sep 22, 2025
c64c96a
Merge pull request #1618 from gliderlabs/dependabot/composer/buildpac…
josegonzalez Sep 23, 2025
b23ed23
chore(deps): bump hadolint/hadolint-action from 3.2.0 to 3.3.0
dependabot[bot] Sep 23, 2025
9ebc634
Update python to version v310
Sep 23, 2025
bbea568
chore(deps): bump puma in /buildpacks/buildpack-ruby/tests/ruby-sinatra
dependabot[bot] Sep 24, 2025
6d9a957
Merge pull request #1621 from gliderlabs/dependabot/bundler/buildpack…
josegonzalez Sep 24, 2025
5a1a5ac
Merge pull request #1620 from gliderlabs/update-python-from-v309-to-310
josegonzalez Sep 24, 2025
5c31de7
Merge pull request #1619 from gliderlabs/dependabot/github_actions/ha…
josegonzalez Sep 24, 2025
b4ec725
Add .idea/ to .gitignore
Tashows Sep 24, 2025
771391a
Add buildpack-detect function in include/buildpack.bash
Tashows Sep 24, 2025
749578b
Add cmd-export buildpack-detect in include/herokuish.bash
Tashows Sep 24, 2025
b3cb7a0
Update nodejs to version v313
Sep 27, 2025
62268f8
chore(deps): bump markupsafe
dependabot[bot] Sep 29, 2025
f65404f
chore(deps): bump markupsafe in /buildpacks/buildpack-multi/tests/multi
dependabot[bot] Sep 29, 2025
aef4cdd
Merge pull request #1625 from gliderlabs/dependabot/pip/buildpacks/bu…
josegonzalez Sep 29, 2025
b1a25bf
Merge pull request #1624 from gliderlabs/update-nodejs-from-v310-to-313
josegonzalez Sep 29, 2025
45eec15
Merge pull request #1626 from gliderlabs/dependabot/pip/buildpacks/bu…
josegonzalez Sep 29, 2025
3e3aeec
Run buildpack-setup before calling _select-buildpack
Tashows Sep 25, 2025
4ff4cee
Update ruby to version v322
Sep 30, 2025
4af893d
Update scala to version v100
Sep 30, 2025
27bbe87
Merge pull request #1628 from gliderlabs/update-scala-from-v99-to-100
josegonzalez Sep 30, 2025
c22848f
Merge pull request #1627 from gliderlabs/update-ruby-from-v321-to-322
josegonzalez Sep 30, 2025
ffcf4ed
Fix lint errors
Tashows Sep 26, 2025
ca5af2f
Update .editorconfig so expected (by lint checks) indent_style and si…
Tashows Sep 27, 2025
3a94afd
List detect command in available commands section in readme
Tashows Sep 30, 2025
1e67399
chore(deps-dev): bump heroku/heroku-buildpack-php
dependabot[bot] Oct 1, 2025
5e8210c
Update python to version v311
Oct 1, 2025
4d007f1
Update php to version v275
Oct 1, 2025
b0bf750
Merge pull request #1629 from gliderlabs/dependabot/composer/buildpac…
josegonzalez Oct 1, 2025
a5cc549
Merge pull request #1630 from gliderlabs/update-python-from-v310-to-311
josegonzalez Oct 1, 2025
419768a
Merge pull request #1631 from gliderlabs/update-php-from-v274-to-275
josegonzalez Oct 1, 2025
e65de18
fix: use updated method of setting environment variables in Dockerfile
josegonzalez Oct 1, 2025
a1f9da6
Merge pull request #1632 from gliderlabs/josegonzalez-patch-1
josegonzalez Oct 1, 2025
c2d41c9
Add tests for buildpack-detect
Tashows Oct 5, 2025
cc6ce8c
chore(deps-dev): bump heroku/heroku-buildpack-php
dependabot[bot] Oct 6, 2025
c13e961
Update python to version v312
Oct 6, 2025
a486d1a
Update php to version v276
Oct 6, 2025
dd8af68
chore(deps): bump rack in /buildpacks/buildpack-multi/tests/multi
dependabot[bot] Oct 7, 2025
e038af9
chore(deps): bump rack in /buildpacks/buildpack-ruby/tests/ruby-sinatra
dependabot[bot] Oct 7, 2025
7ee06d7
Merge pull request #1637 from gliderlabs/dependabot/bundler/buildpack…
josegonzalez Oct 7, 2025
4bd756e
Merge pull request #1636 from gliderlabs/dependabot/bundler/buildpack…
josegonzalez Oct 7, 2025
94bd3ae
Merge pull request #1635 from gliderlabs/update-php-from-v275-to-276
josegonzalez Oct 7, 2025
d0c559f
Merge pull request #1633 from gliderlabs/dependabot/composer/buildpac…
josegonzalez Oct 7, 2025
2239f81
Merge pull request #1634 from gliderlabs/update-python-from-v311-to-312
josegonzalez Oct 7, 2025
df981c1
Update go to version v214
Oct 9, 2025
f191b0d
chore(deps): bump rack in /buildpacks/buildpack-multi/tests/multi
dependabot[bot] Oct 10, 2025
4a2e3b9
chore(deps): bump rack in /buildpacks/buildpack-ruby/tests/ruby-sinatra
dependabot[bot] Oct 10, 2025
6ffacad
Update ruby to version v324
Oct 10, 2025
a69bb87
Update python to version v313
Oct 10, 2025
26b046e
Update nodejs to version v314
Oct 11, 2025
77ff1e3
Merge pull request #1646 from gliderlabs/update-nodejs-from-v313-to-314
josegonzalez Oct 12, 2025
afd9631
Merge pull request #1645 from gliderlabs/update-python-from-v312-to-313
josegonzalez Oct 12, 2025
0090ada
Merge pull request #1644 from gliderlabs/update-ruby-from-v322-to-324
josegonzalez Oct 12, 2025
3b78599
Merge pull request #1643 from gliderlabs/dependabot/bundler/buildpack…
josegonzalez Oct 12, 2025
75fb2ee
Merge pull request #1642 from gliderlabs/dependabot/bundler/buildpack…
josegonzalez Oct 12, 2025
3382c76
Merge pull request #1640 from gliderlabs/update-go-from-v213-to-214
josegonzalez Oct 12, 2025
f8fa995
chore(deps): bump sinatra in /buildpacks/buildpack-multi/tests/multi
dependabot[bot] Oct 12, 2025
73a1cf6
Merge pull request #1639 from gliderlabs/dependabot/bundler/buildpack…
josegonzalez Oct 12, 2025
0ab4f84
chore(deps): bump sinatra
dependabot[bot] Oct 12, 2025
4c9efba
Merge pull request #1622 from Tashows/expose-detect
josegonzalez Oct 12, 2025
d32c9ce
Merge pull request #1638 from gliderlabs/dependabot/bundler/buildpack…
josegonzalez Oct 12, 2025
449f99d
Release 0.11.5
josegonzalez Oct 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,9 @@ end_of_line = lf
insert_final_newline = true
charset = utf-8
trim_trailing_whitespace = true
indent_style = space
indent_size = 2

[*.go]
indent_style = tab
indent_size = 4

[contrib/post-install]
indent_size = 2
indent_style = space
2 changes: 1 addition & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
- name: Clone
uses: actions/checkout@v5
- name: Run hadolint
uses: hadolint/hadolint-action@3fc49fb50d59c6ab7917a2e4195dba633e515b29
uses: hadolint/hadolint-action@2332a7b74a6de0dda2e2221d575162eba76ba5e5
with:
config: .github/linters/.hadolint.yml

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ build
include/cedarish.txt
include/buildpacks.txt
bindata.go
.idea/
40 changes: 40 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,46 @@

All notable changes to this project will be documented in this file.

## [0.11.5](https://github.com/gliderlabs/herokuish/compare/v0.11.4...v0.11.5) - 2025-10-12

- #1608 @dokku-bot: Update nodejs to version v310
- #1609 @dependabot: chore(deps): bump puma from 7.0.2 to 7.0.3 in /buildpacks/buildpack-ruby/tests/ruby-sinatra
- #1610 @dokku-bot: Update gradle to version v46
- #1611 @dokku-bot: Update gradle to version v47
- #1612 @dokku-bot: Update go to version v213
- #1613 @dokku-bot: Update ruby to version v321
- #1614 @dokku-bot: Update gradle to version v48
- #1615 @dokku-bot: Update python to version v308
- #1616 @dokku-bot: Update python to version v309
- #1617 @dokku-bot: Update php to version v274
- #1618 @dependabot: chore(deps-dev): bump heroku/heroku-buildpack-php from 273 to 274 in /buildpacks/buildpack-php/tests/php
- #1619 @dependabot: chore(deps): bump hadolint/hadolint-action from 3.2.0 to 3.3.0
- #1620 @dokku-bot: Update python to version v310
- #1621 @dependabot: chore(deps): bump puma from 7.0.3 to 7.0.4 in /buildpacks/buildpack-ruby/tests/ruby-sinatra
- #1622 @Tashows Expose buildpack detection as a command
- #1624 @dokku-bot: Update nodejs to version v313
- #1625 @dependabot: chore(deps): bump markupsafe from 3.0.2 to 3.0.3 in /buildpacks/buildpack-python/tests/python-flask
- #1626 @dependabot: chore(deps): bump markupsafe from 3.0.2 to 3.0.3 in /buildpacks/buildpack-multi/tests/multi
- #1627 @dokku-bot: Update ruby to version v322
- #1628 @dokku-bot: Update scala to version v100
- #1629 @dependabot: chore(deps-dev): bump heroku/heroku-buildpack-php from 274 to 275 in /buildpacks/buildpack-php/tests/php
- #1630 @dokku-bot: Update python to version v311
- #1631 @dokku-bot: Update php to version v275
- #1632 @josegonzalez fix: use updated method of setting environment variables in Dockerfile
- #1633 @dependabot: chore(deps-dev): bump heroku/heroku-buildpack-php from 275 to 276 in /buildpacks/buildpack-php/tests/php
- #1634 @dokku-bot: Update python to version v312
- #1635 @dokku-bot: Update php to version v276
- #1636 @dependabot: chore(deps): bump rack from 3.2.1 to 3.2.2 in /buildpacks/buildpack-multi/tests/multi
- #1637 @dependabot: chore(deps): bump rack from 3.2.1 to 3.2.2 in /buildpacks/buildpack-ruby/tests/ruby-sinatra
- #1638 @dependabot: chore(deps): bump sinatra from 4.1.1 to 4.2.0 in /buildpacks/buildpack-ruby/tests/ruby-sinatra
- #1639 @dependabot: chore(deps): bump sinatra from 4.1.1 to 4.2.0 in /buildpacks/buildpack-multi/tests/multi
- #1640 @dokku-bot: Update go to version v214
- #1642 @dependabot: chore(deps): bump rack from 3.2.2 to 3.2.3 in /buildpacks/buildpack-multi/tests/multi
- #1643 @dependabot: chore(deps): bump rack from 3.2.2 to 3.2.3 in /buildpacks/buildpack-ruby/tests/ruby-sinatra
- #1644 @dokku-bot: Update ruby to version v324
- #1645 @dokku-bot: Update python to version v313
- #1646 @dokku-bot: Update nodejs to version v314

## [0.11.4](https://github.com/gliderlabs/herokuish/compare/v0.11.3...v0.11.4) - 2025-09-12

- #1600 @dokku-bot: Update python to version v307
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ ARG STACK_VERSION=24
ARG TARGETARCH

ENV STACK=heroku-$STACK_VERSION
ENV DEBIAN_FRONTEND noninteractive
ENV DEBIAN_FRONTEND=noninteractive
LABEL com.gliderlabs.herokuish/stack=$STACK

USER root
Expand All @@ -39,4 +39,4 @@ RUN apt-install daemontools && \
*/tmp
COPY include/default_user.bash /tmp/default_user.bash
RUN bash /tmp/default_user.bash && rm -f /tmp/default_user.bash
ENV BASH_BIN /usr/bin/bash
ENV BASH_BIN=/usr/bin/bash
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ REPOSITORY = herokuish
DESCRIPTION = 'Herokuish uses Docker and Buildpacks to build applications like Heroku'
HARDWARE = $(shell uname -m)
SYSTEM_NAME = $(shell uname -s | tr '[:upper:]' '[:lower:]')
VERSION ?= 0.11.4
VERSION ?= 0.11.5
IMAGE_NAME ?= $(NAME)
BUILD_TAG ?= dev
PACKAGECLOUD_REPOSITORY ?= dokku/dokku-betafish
Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[![Build Status](https://github.com/gliderlabs/herokuish/workflows/CI/badge.svg)](https://github.com/gliderlabs/herokuish/actions?query=workflow%3ACI)
[![IRC Channel](https://img.shields.io/badge/irc-%23gliderlabs-blue.svg)](https://kiwiirc.com/client/irc.freenode.net/#gliderlabs)
[![Docker Hub](https://img.shields.io/badge/docker%20hub-v0.11.4-blue)](https://hub.docker.com/r/gliderlabs/herokuish)
[![Docker Hub](https://img.shields.io/badge/docker%20hub-v0.11.5-blue)](https://hub.docker.com/r/gliderlabs/herokuish)

A command line tool for emulating Heroku build and runtime tasks in containers.

Expand All @@ -19,7 +19,7 @@ Download and uncompress the latest binary tarball from [releases](https://github
For example, you can do this directly in your Dockerfiles installing into `/bin` as one step:

```shell
RUN curl --location --silent https://github.com/gliderlabs/herokuish/releases/download/v0.11.4/herokuish_0.11.4_linux_x86_64.tgz \
RUN curl --location --silent https://github.com/gliderlabs/herokuish/releases/download/v0.11.5/herokuish_0.11.5_linux_x86_64.tgz \
| tar -xzC /bin
```

Expand All @@ -35,6 +35,7 @@ $ herokuish
Available commands:
buildpack Use and install buildpacks
build Build an application using installed buildpacks
detect Detect buildpack to use for an application
install Install buildpack from Git URL and optional committish
list List installed buildpacks
test Build and run tests for an application using installed buildpacks
Expand Down
2 changes: 1 addition & 1 deletion buildpacks/buildpack-go/buildpack-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v212
v214
2 changes: 1 addition & 1 deletion buildpacks/buildpack-gradle/buildpack-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v45
v48
16 changes: 8 additions & 8 deletions buildpacks/buildpack-multi/tests/multi/Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,27 +1,27 @@
GEM
remote: http://rubygems.org/
specs:
base64 (0.2.0)
logger (1.6.1)
mustermann (3.0.3)
base64 (0.3.0)
logger (1.7.0)
mustermann (3.0.4)
ruby2_keywords (~> 0.0.1)
rack (3.2.1)
rack-protection (4.1.1)
rack (3.2.3)
rack-protection (4.2.1)
base64 (>= 0.1.0)
logger (>= 1.6.0)
rack (>= 3.0.0, < 4)
rack-session (2.1.1)
base64 (>= 0.1.0)
rack (>= 3.0.0)
ruby2_keywords (0.0.5)
sinatra (4.1.1)
sinatra (4.2.1)
logger (>= 1.6.0)
mustermann (~> 3.0)
rack (>= 3.0.0, < 4)
rack-protection (= 4.1.1)
rack-protection (= 4.2.1)
rack-session (>= 2.0.0, < 3)
tilt (~> 2.0)
tilt (2.4.0)
tilt (2.6.1)

PLATFORMS
ruby
Expand Down
2 changes: 1 addition & 1 deletion buildpacks/buildpack-multi/tests/multi/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Flask==3.1.2
Jinja2==3.1.6
gunicorn==23.0.0
markupsafe==3.0.2
markupsafe==3.0.3
2 changes: 1 addition & 1 deletion buildpacks/buildpack-nodejs/buildpack-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v309
v314
2 changes: 1 addition & 1 deletion buildpacks/buildpack-php/buildpack-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v273
v276
12 changes: 6 additions & 6 deletions buildpacks/buildpack-php/tests/php/composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion buildpacks/buildpack-python/buildpack-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v307
v313
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Flask==3.1.2
Jinja2==3.1.6
gunicorn==23.0.0
markupsafe==3.0.2
markupsafe==3.0.3
2 changes: 1 addition & 1 deletion buildpacks/buildpack-ruby/buildpack-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v320
v324
18 changes: 9 additions & 9 deletions buildpacks/buildpack-ruby/tests/ruby-sinatra/Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
GEM
remote: http://rubygems.org/
specs:
base64 (0.2.0)
logger (1.6.1)
mustermann (3.0.3)
base64 (0.3.0)
logger (1.7.0)
mustermann (3.0.4)
ruby2_keywords (~> 0.0.1)
nio4r (2.7.4)
power_assert (2.0.5)
puma (7.0.2)
puma (7.0.4)
nio4r (~> 2.0)
rack (3.2.1)
rack-protection (4.1.1)
rack (3.2.3)
rack-protection (4.2.1)
base64 (>= 0.1.0)
logger (>= 1.6.0)
rack (>= 3.0.0, < 4)
Expand All @@ -23,16 +23,16 @@ GEM
rack (>= 3)
rake (13.3.0)
ruby2_keywords (0.0.5)
sinatra (4.1.1)
sinatra (4.2.1)
logger (>= 1.6.0)
mustermann (~> 3.0)
rack (>= 3.0.0, < 4)
rack-protection (= 4.1.1)
rack-protection (= 4.2.1)
rack-session (>= 2.0.0, < 3)
tilt (~> 2.0)
test-unit (3.7.0)
power_assert
tilt (2.4.0)
tilt (2.6.1)

PLATFORMS
ruby
Expand Down
2 changes: 1 addition & 1 deletion buildpacks/buildpack-scala/buildpack-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v99
v100
8 changes: 8 additions & 0 deletions include/buildpack.bash
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,14 @@ _select-buildpack() {
fi
}

buildpack-detect() {
declare desc="Detect suitable buildpack for an application"
ensure-paths
[[ "$USER" ]] || randomize-unprivileged
buildpack-setup >/dev/null
_select-buildpack
}

buildpack-build() {
declare desc="Build an application using installed buildpacks"
ensure-paths
Expand Down
1 change: 1 addition & 0 deletions include/herokuish.bash
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ main() {
cmd-export buildpack-install
cmd-export buildpack-list
cmd-export buildpack-test
cmd-export buildpack-detect

cmd-export-ns slug "Manage application slugs"
cmd-export slug-import
Expand Down
45 changes: 45 additions & 0 deletions tests/functional/tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,48 @@ T_generate-slug() {
herokuish slug generate
tar tzf /tmp/slug.tgz"
}

T_buildpack-detect-default() {
herokuish-test "buildpack-detect-default" "
set -e
unset BUILDPACK_URL
export buildpack_path=/tmp/buildpacks
export build_path=/tmp/app
export unprivileged_user=\$(whoami)
export unprivileged_group=\$(id -gn)

rm -rf \$buildpack_path && mkdir -p \$buildpack_path

mkdir -p \$buildpack_path/00_buildpack-ruby/bin
{
echo '#!/usr/bin/env bash'
echo 'echo Ruby'
echo 'exit 0'
} > \$buildpack_path/00_buildpack-ruby/bin/detect
chmod +x \$buildpack_path/00_buildpack-ruby/bin/detect

herokuish buildpack detect | grep 'Ruby app detected'
"
}

T_buildpack-detect-fail() {
herokuish-test "buildpack-detect-fail" "
set -e
unset BUILDPACK_URL
export buildpack_path=/tmp/buildpacks
export build_path=/tmp/app
export unprivileged_user=\$(whoami)
export unprivileged_group=\$(id -gn)

rm -rf \$buildpack_path && mkdir -p \$buildpack_path

mkdir -p \$buildpack_path/00_buildpack-fail/bin
{
echo '#!/usr/bin/env bash'
echo 'exit 1'
} > \$buildpack_path/00_buildpack-fail/bin/detect
chmod +x \$buildpack_path/00_buildpack-fail/bin/detect

herokuish buildpack detect 2>&1 | grep 'Unable to select a buildpack'
"
}
Loading