Commit Graph

57 Commits

Author SHA1 Message Date
Knative Automation 267e91c4c2 chore: update Springboot platform version to 3.4.5 2025-04-24 16:06:00 +00:00
github-actions[bot] 234c442421
chore: update Springboot platform version to 3.4.4 (#2758)
Co-authored-by: Knative Automation <automation@knative.team>
2025-03-21 06:52:16 +00:00
github-actions[bot] c4e4cc7119
chore: update Springboot platform version to 3.4.3 (#2712)
Co-authored-by: Knative Automation <automation@knative.team>
2025-02-24 10:46:19 +00:00
github-actions[bot] 23668cbf36
chore: update Springboot platform version to 3.4.2 (#2669)
Co-authored-by: Knative Automation <automation@knative.team>
2025-01-27 20:38:56 +00:00
github-actions[bot] cb53c62391
chore: update Springboot platform version to 3.4.1 (#2637)
Co-authored-by: Knative Automation <automation@knative.team>
2025-01-06 22:25:56 +00:00
github-actions[bot] 90626ab4c0
chore: update Springboot platform version to 3.4.0 (#2609)
Co-authored-by: Knative Automation <automation@knative.team>
2024-12-03 12:41:44 +00:00
github-actions[bot] 09e597ced0
chore: update Springboot platform version to 3.3.5 (#2552)
Co-authored-by: Knative Automation <automation@knative.team>
2024-10-24 17:23:02 +00:00
github-actions[bot] c489f7f32a
chore: update Springboot platform version to 3.3.4 (#2509)
Co-authored-by: Knative Automation <automation@knative.team>
2024-09-19 16:28:42 +00:00
github-actions[bot] 4775ad973c
chore: update Springboot platform version to 3.3.3 (#2465)
Co-authored-by: Knative Automation <automation@knative.team>
2024-08-26 06:48:26 +00:00
github-actions[bot] 531af8fd72
chore: update Springboot platform version to 3.3.2 (#2436)
Co-authored-by: Knative Automation <automation@knative.team>
2024-07-22 17:02:01 +00:00
Matej Vašek f8c54a5698
chore: update CA bundle (#2415)
* chore: update CA bundle

Signed-off-by: Matej Vašek <mvasek@redhat.com>

* style: add EoLs

Signed-off-by: Matej Vašek <mvasek@redhat.com>

* style: removed trailing whitespace

Signed-off-by: Matej Vašek <mvasek@redhat.com>

---------

Signed-off-by: Matej Vašek <mvasek@redhat.com>
2024-07-09 07:45:09 +00:00
github-actions[bot] ff97fe2a7c
chore: update Springboot platform version to 3.3.1 (#2384)
Co-authored-by: Knative Automation <automation@knative.team>
2024-06-20 12:34:18 +00:00
github-actions[bot] 1997a232dc
chore: update Springboot platform version to 3.3.0 (#2322)
Co-authored-by: Knative Automation <automation@knative.team>
2024-05-23 16:39:51 +00:00
github-actions[bot] 619be59d86
chore: update Springboot platform version to 3.2.6 (#2319)
Co-authored-by: Knative Automation <automation@knative.team>
2024-05-23 13:20:25 +00:00
github-actions[bot] 98af389ce3
chore: update Springboot platform version to 3.2.5 (#2302)
Co-authored-by: Knative Automation <automation@knative.team>
2024-05-15 06:03:03 +00:00
github-actions[bot] 6abc5e6527
chore: update Springboot platform version to 3.2.4 (#2243)
Co-authored-by: Knative Automation <automation@knative.team>
2024-03-25 16:32:28 +00:00
github-actions[bot] 51f7a70b9a
chore: update Springboot platform version to 3.2.3 (#2180)
Co-authored-by: Knative Automation <automation@knative.team>
2024-02-25 15:34:56 +00:00
github-actions[bot] 73c08a9f11
chore: update Springboot platform version to 3.2.2 (#2134)
Co-authored-by: Knative Automation <automation@knative.team>
2024-01-24 16:11:36 +00:00
Matthias Wessendorf c252c4f537
Springboot bumps (#2126)
* Making updates to Spring boot templates, as suggested by @trisberg

Signed-off-by: Matthias Wessendorf <mwessend@redhat.com>

* 🤖 We touched the samples, so adding the generated thing

Signed-off-by: Matthias Wessendorf <mwessend@redhat.com>

* Bump JDK Builder to 21

Signed-off-by: Matthias Wessendorf <mwessend@redhat.com>

* Some more java 21 setters

Signed-off-by: Matthias Wessendorf <mwessend@redhat.com>

---------

Signed-off-by: Matthias Wessendorf <mwessend@redhat.com>
2024-01-22 18:45:03 +00:00
github-actions[bot] a3ac5e7248
chore: update Springboot platform version to 3.1.5 (#2045)
Co-authored-by: Knative Automation <automation@knative.team>
2023-10-21 17:20:04 +00:00
Thomas Risberg 84ad7d7f17
chore: update maven profile buildEnv in springboot templates (#2014)
- Update the documentation for springboot arm based builds

- Add the generated filesystem
2023-10-18 19:32:51 +00:00
github-actions[bot] 1ff01a30ba
chore: update Springboot platform version to 3.1.3 (#1947)
Co-authored-by: Knative Automation <automation@knative.team>
2023-08-29 16:12:30 +00:00
github-actions[bot] 8630175fc4
chore: update Springboot platform version to 3.1.2 (#1907)
Co-authored-by: Knative Automation <automation@knative.team>
2023-08-04 17:35:08 +00:00
Thomas Risberg 339608a733
Update springboot template pom.xml dependencies (#1807)
- update to use spring-cloud.version 2022.0.3
- remove springboot.platform.version property, not needed, rely on parent version
- remove import scope and pom type from spring-boot dependencies
2023-06-14 17:02:46 +00:00
github-actions[bot] 70fd17642e
chore: update Springboot platform version to 3.1.0 (#1763)
Co-authored-by: Knative Automation <automation@knative.team>
2023-05-27 00:42:26 +00:00
ningyan325 f528a70881
Automated platform update for springboot templates (#1762)
* initial chg

* fix parent version selection

* change from `false` to false

* move platform checking as first task in main

* re-make generate/zz_filesystem_generated.go

* fixes of spaces in code at line 105, in following lint rules
2023-05-26 21:51:26 +00:00
andrejusc 79430e9542
Update springboot templates to Spring Boot 3.0.5 (#1658)
* Update springboot templates to Spring Boot 3.0.5

* Regenerated embedded file

* Regenerated embedded file one more time
2023-03-30 21:53:00 +00:00
Thomas Risberg d090d5dd5e
Update springboot templates to Spring Boot 3.0.2 (#1509)
- add needed buildEnv properties
- add class to register runtime hints for MessageUtils.MessageStructureWithCaseInsensitiveHeaderKeys
- update README files
- update unit tests to use Java 17

Signed-off-by: Thomas Risberg <trisberg@pivotal.io>

Signed-off-by: Thomas Risberg <trisberg@pivotal.io>
2023-01-24 15:16:38 +00:00
Luke Kingland ed7592cd6b
chore: re-bump springboot template versions (#1511) 2023-01-20 09:57:02 +00:00
Luke Kingland 554e74a309
chore: remove underscore prefix from test packages (#1503)
* remove underscore prefix from test packages

* springboot patch attempt
2023-01-20 09:01:02 +00:00
Thomas Risberg 63aab77884
Update Spring Boot to 2.7.7 (#1502)
* Update Spring Boot to 2.7.7

- also add function-template springboot.md doc

Signed-off-by: Thomas Risberg <trisberg@pivotal.io>

* Fix lint errors

Signed-off-by: Thomas Risberg <trisberg@pivotal.io>
2023-01-18 19:30:03 +00:00
David Fridrich 13fde9025d
feat: Change Invocation.format to Invoke (#1415)
* test1

* d

* templates/* manifest remove http

* docs fix

* migration test a template tests

* docs func_run

* docs last

* misspell

* suggested changes

* def http

* zz

* zz

* change invocation struct name

* zz file
2022-11-11 11:20:19 +00:00
Gunjan Vyas e465348210
chore: update springboot dependencies (#1183) 2022-08-23 12:05:17 +00:00
Matheus Cruz f828b0998c
feat: add echo for springboot http template (#1072)
* feat: add echo func

* chore: package

* docs: update docs

* refactor: add space between headers

* refactor: regenerate zz file

* refactor: clean with pre-commit

* refactor: add func_yaml-schema.json file

* refactor: rename test and fix white-spaces

* refactor: remove .idea files

* test: change http test

* test: change expected result
2022-06-17 17:05:18 +00:00
Matej Vasek 8661253be6
Remove unnecesary files from Java template (#1008)
* Remove unnecesary files from Quarkus template

The jar will be automatically downloaded first time maven wrapper is used.

Signed-off-by: Matej Vasek <mvasek@redhat.com>

* Remove unnecesary files from Sprint Boot templates

The jar will be automatically downloaded first time maven wrapper is used.

Signed-off-by: Matej Vasek <mvasek@redhat.com>
2022-05-06 15:06:29 +00:00
Lance Ball 31c1d66eb3
chore: use paketo builders for all runtimes (#1001)
All runtimes were actually using paketo builders already, but the
builders were still being explicitly set in manifest.yaml instead of
existing as a default in builder.go like all of the others.

Signed-off-by: Lance Ball <lball@redhat.com>
2022-05-06 01:23:28 +00:00
Thomas Risberg a694cf54b3
Update spring boot cloud and native versions (#999) 2022-04-30 17:00:55 +00:00
Matej Vasek 1ee9fa163b
Update spring-boot in templates (#947)
Signed-off-by: Matej Vasek <mvasek@redhat.com>
2022-04-06 18:11:45 +00:00
Lance Ball 4a4cebb1ea
fix: apply updated spring-boot-function dependency (#936)
This commit updates the spring-boot-function dependency explicitly as there
is not yet a CVE fix for spring-cloud 2021.0.1.

```
❯ ./mvnw clean install dependency:tree | grep spring-cloud-function
[INFO] |  +- org.springframework.cloud:spring-cloud-function-web:jar:3.2.2:compile
[INFO] +- org.springframework.cloud:spring-cloud-function-context:jar:3.2.3:compile (optional)
[INFO] |  +- org.springframework.cloud:spring-cloud-function-core:jar:3.2.2:compile (optional)
```

Fixes: https://github.com/knative-sandbox/kn-plugin-func/issues/929
Fixes: https://spring.io/blog/2022/03/29/cve-report-published-for-spring-cloud-function

Signed-off-by: Lance Ball <lball@redhat.com>
2022-04-04 16:52:43 +00:00
Thomas Risberg 9a6aaa5474
Support using 'func invoke' for springboot templates (#920)
* Support using 'func invoke' for springboot templates

- add README notes for using 'func invoke' to springboot templates
- update ce-type used for cloudevents template tests

* Re-generate zz_filesystem_generated.go after rebase
2022-03-23 09:31:18 -07:00
Thomas Risberg 03e53287d1
Update springboot http template (#914)
- http should match cloudevents template
- update Spring Boot version
- update README for cloudevents template
2022-03-22 08:31:12 -07:00
salaboy 57909f71fe
Updating to latest spring cloud release and refactoring code (#838)
* updating to latest spring cloud release and refactoring code

* new health endpoints

* implementing simplified echo function in template

* adding banner

* adding NL at EOF

* updating native to release

* fixing trailing whitespace

* adding invocation back

* adding Newline

* whitespaces

* fix lint and regenerate

* regenerate zz filesystem after rebase
2022-03-11 07:22:32 -08:00
Lance Ball ad42f3a258
chore: update manifest.yamls (#846)
* chore: update manifest.yamls

In a couple of cases, the `invoke` parameter was missing. And there was an
outdated use of a typescript buildpack in the typescript/cloudevent templates.

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: I should set VSCode to autosave on focus change

Signed-off-by: Lance Ball <lball@redhat.com>
2022-02-22 09:10:04 -08:00
Lance Ball ece9ac3645
fix: use paketo base image for springboot (#792)
The build actually seems to require `base` vs `tiny.

Signed-off-by: Lance Ball <lball@redhat.com>
2022-01-27 09:26:47 -08:00
Lance Ball 6097b8d790
fix: use domain qualified registry for springboot (#789)
* fix: use domain qualified registry for springboot

The builder image name should include the registry name. Also it seems
that the tiny builder doesn't actually work. We need base.

Fixes: https://github.com/knative-sandbox/kn-plugin-func/issues/775

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: regenerate pkged.go with go 1.17

Signed-off-by: Lance Ball <lball@redhat.com>
2022-01-26 11:28:45 -08:00
Fabian Lopez 866728dbc0
mitigate log4j dependency vulnerability (#723)
* mitigate log4j dependency vulnerability

* bump log4j version to 2.16.0

* update pkged.go

* manually fix pkged.go annotation

* Revert "manually fix pkged.go annotation"

This reverts commit dc67a48185.

* fix pkged.go

* podman test trigger

* e2e test trigger
2021-12-16 03:32:17 -08:00
salaboy c70a21e9a4
feat: make SpringBoot template SpringNative by default (#649)
* move springboot template to use springnative

* improving templates to use spring-cloud-deps and ce-type routing

* updating readmes

* removing trailing spaces and adding newline at EOF
2021-11-16 10:31:53 -08:00
Lance Ball e319ea3b62
feat: add support for manifest.yaml at repo/language/template levels (#558)
* feat!: add support for manifest.yaml and runtime.yaml

BREAKING CHANGE
This commit adds the concepts of a manifest.yaml file at the top level
of a template repository, and a runtime.yaml file for each language/runtime
within the repository. Prior to this, repository metadata was primarily
restricted to information that could be gleaned from the file system, such
as the directory name used as the Name.

A manifest.yaml file contains a Name, URL, Version, and a list of supported
runtimes; and if all of the runtimes expose the same health endpoints, these
can be set here.

Within a runtime directory, there may exist a runtime.yaml file which allows
language pack providers to set the health endpoints, overriding the values
set in manifest.yaml, as well as Builders and Buildpacks.

This change removes support for a builders.yaml file in a runtime/template
directory, as this was guaranteed to be redundant with the builders.yaml
file in a sibling template directory. The choice was to move these up a
level to runtime/runtime.yaml.

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: bump go version for unit tests

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: using go 1.16 now requires 'go mod tidy'
See: https://golang.org/doc/go1.16

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: restore support for directory traversal

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: whitespace linting

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: update func_yaml-schema.json

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: spelling errors caught by reviewdog

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: use os.ReadDir

Signed-off-by: Lance Ball <lball@redhat.com>

* squash: restore project creation from remote repos

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: remove billyFilesystem

Signed-off-by: Lance Ball <lball@redhat.com>

* doc: expand on language pack documentation

Adds more detail around how language packs can be provided by third
parties, and the expected structure and metadata required.

Fixes: https://github.com/knative-sandbox/kn-plugin-func/issues/452

Signed-off-by: Lance Ball <lball@redhat.com>

* doc: update language pack documentation

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: cleanup deps

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: cleanup deps - again

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: reviewdog whitespace cleanup

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: custom repo template listing

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: bump go version for integration tests

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: adjust test-templates repo uri for e2e

Signed-off-by: Lance Ball <lball@redhat.com>

* fix: don't fail when extended templates don't support a given runtime

Signed-off-by: Lance Ball <lball@redhat.com>

* src: repo and template type hierarchy

As the client API increases in complexity, upgrading to a more correct
type hierarchy for the object managers serves to keep things clean.  In
this update, the Repository and Templates manager now use constructors
with private members, including a backreference to the root Client
object, which provides the mangers with full access to the current
client instance API for implementing their (growing) features.

* src: template manager writes

The templateWriter struct has now been upgraded to integrate with the
newly-added type system which includes a Templates Manager by adding a
.Write method which writes a template at the given location.  This
encapsulation of the write functionality moves us towards having a
cleaner abstraction atop writing any template to disk from any
repository.

In addition, the "Get" prefix was removed from many accessor methods, as
this is standard a Go idiom.

* src: templates write including denormalize

- merges templateWriter into templates manager
- denormalization of builders, health endpoints etc. made part of .Write
- write logic now works on a Template rather than string paths etc

The templates manager can now write out a template given a function directy.
Included internnaly to write is the denormalization logic, which is now closer
to where it is used, which should improve cohesion and decouple the template
implementation detail from the Client. Also moves the write logic closer to the
template itself, with the expectation the same will happen for functions when
Config and Function are merged.

* src: vendor

* src: merge manifests into domain model

In general, the manifests sytsem is merged more tightly into the overall
system while also expalding it to use a path to templates to avoid
having to create a full filesystem shadow-copy in yaml. Preserves
backwards-compatiblity by keeping the base case a yaml-free repo of only
templates.  Creaets a hierarchical inheritance from repository to
runtime to template for builders, endpoints etc.  whcih allows for the
manifest within templates to be a first-class citizen, though its use
will be rather rare.  Some more in-depth explanations of the more
substantive changes are as follows:

- Merges Manifest with Repository

The Manifest structure is essentially a serialized Repository, so they
are now the same object.

- Converts repo URL to a calculated field

The URL is informative and entirely dependent on the current state of
the repo, so it should be calculated to avoid confusion and avoid being
serialized to the manifest.

- Merge FunctionTemplate with Template

The struct being serialized here is a Template, so they are now the same object

- Extracts new "BuildConfig" embedded struct

The Builders and Buildpacks members are shared between Repository,
Runtime and Template, so they are now an embedded stuct in the same
manner as HealthEndpoints.

- yaml 'inline' declaration for embedded structs

The HealthEndpoints and other embedded structs were not actually being
read from their configs because of a nuance of yaml which (in contrast
to json unmarshallers) requires the `,inline` tag on the struct member
to trigger inclusion in decode.

- Replaces Repository's runtimes member with templates

While it is true that on disk templates are subdivided into their
effective runtime, this is for ease of development.  The logical
structure is: repositories have templates.  Templates are applicabe to
runtimes.  Therefore the correct API is to have templates a direct
member of repository but requiring a runtime filter for access.

- Use repository templates path instead of full list

The goal is to support the use of repositories which contain more than
just templates.  The solution is to define an alternate location for
templates (such as ./templates).  Creating an entire exhaustive manifest
where each runtime and each template is defined with a name and path is
a usurpation of the responsibilities of a filesystem, and causes
unintend negative knock-on effects.  Let's try this simple solution
before jumping to the nuclear option of defining a filesystem-in-yaml.

- Use filesystems when loading repository objects

The fact that a file exists on the disk, embedded, or remote should be
of no concern to most of the code.  This is accomplished by using the
filesystem abstraction which is used during template writing.  This will
be further improved in future versions by upgrading to use the fs.FS
interface and tooling.

- Uses manifest.yaml at all levels

Once the hierarchical nature of the manifest was instituted, it seemed
more intuitive to have the same filename at each level.  This also has
the nice benefit of being backwards-compatible with template-level
manifest.  This is not a correctness issue, but a guess that remembering
a single filename which can exist at different levels in a hierarchy is
easier to remember than different filenames, and its location in the
hierearchy sufficient differentiator making the different filenames
_perhaps_ unencssary.  The constants are left as separate for an easy
revert.

- Moves static defaults into code wherever possible

Wherever yaml was being statically compiled in, it was updated such that
canonical values for static defaults were defined on the Go structure,
with the yaml being for overrides.  For example Default Readiness and
Liveness endpoints.

Some notable benefits of letting the filesystem do it's thing:
* Preserves the ability to create a repository of templates without
  hacking yaml
* Reflects changes directly in IDEs which have native support for
  filesystem, not so for a proprietary manifest.yaml
* the builtin repository has no name, so parsing a manifest from within
  it is both prone to error and confusing, as it could lead future
  developers to submit PRs which change its name.

* fix: revert repository.git to a bare server repo

* src: repository default name

The Repository struct now includes a Name and DefaultName. The former is
the current name of the repository, and corresponds to the path on disk.
The latter is the name specified in the manifest.yaml, and is used as
the default name of the repository when no name is provided.

Fixes an issue where there could be name collisions using a uuid for the
initial name until the manifest is read in.

Restructures the embedded repositories such that one exemplifies a base
case repo with no metadata and only templates, the other specifying a
manifest to exemplify for example a complete language pack.

Adds a test such that all three cases are covered: explicit name, no
name but manifest-defined default name, URI-derived name.

* feat: single repo mode

Enables single repository mode suystem-wide, which fully implements the
logic intended by the WithRepository option.

The default repoisitory is now programatically defined, and while by
default is the embedded repo, it can be overriden using the
WithRepository option.  This keeps the logic internal to the
repositories managet, removeing the need for a crossp-cutting concern in
other parts of the system.

* src: manifest inheritance and existence tests

Respects alternate templates location when defined in a manifest.
Respects manifest embedded structs HealthEndpoints and BuildConfig at
each of the three levels, with inheritance:  Repo, Runtime and Template.
Separates test repositories into the two cases of a templates-only repo
(with no manifest) and a complex repo (with manifests) such as for
language packs.
Leaves the BuildConfig struct as inline but sets the HealthEndpoints as
being named, such that the latter has its fields in the yaml under the
key 'healthEndpoints' but the former does not (passthrough).
Adds error checks when attempting to access named repo when in
single-repo mode.

* src: remove function merge

Removes feature of mergine a func.yaml defined in a template in favor of
sticking with the manifest.yaml until such time as this is requested.
Assuming YAGNI.

* src: repo filesystems

- Embeds repositories with an internal filesystem
- Replaces filesystem disk checkouts with in-memory until final write
- Combines template Write of various types into a single write which uses the
  filesystem of the applicable templates's repository
- Template is now a simple noun, with logic localized to the templates manager
- Adds better error message regarding single repo mode conditions

The reason for replacing filesystem-based repository instances with in-memory
(especially remote for WithRepository mode) is for a few reasons:  First, 'Add'
will fail without using the temporary UUID hack if there already exists a
repository of the _repo_ name (due to a filesystem collision).  We have
to read the repo to determine the default name as well, so it's messy to avoid.
Second, using an on-disk version is potentially leaky because it may leave
files on the system in the event of a process interruption; able to be
mitigated, but with a likewise hacky use of a os temp directory.  Third, it
may cause racing conditions when using multiple instances the Client as a lib.
Lastly, it precludes our ability to run without touching the filesystm: a
useful mode when running as a pure library or in security-restricted
environments.

* fix: paths within embedded fs

* src: repositories code cleanup

* Removes the manual 0_18 version suffix
* Reanames "single" (uri for single-mode) to the more descriptive
  "remote" (with associated accessor api)
* Default repo name when no URI provided is set to default
* Various wording improvements in error text and comments

* src: error formatting

* feat: templates from local file paths

Adds back the local os filesystem as a fallthrough to support loading
template repositories from file:// paths on disk, without the
requirement that they also be git repositories.

* fix: clone once

Fixes the shortcut of performing a clone to read the manifest prior to
cloning the repository to disk.  This double-clone was replaced by a
single clone (applying the manifest) followed by a file copy from the
in-memory FS to the on-disk repository location.

* src: test fixes

* respect explict name on repository .Add
* fail if repository already exists
* update expected test filenames to new general (non-go-specific) setup
* adds the default repo name to the NewRepository constructor,
  internalizing the somewhat tricky default logic.
* move repo write logig to repo itself, as it will contain impl-specific
  nuances.
* invalid repo path is an error, but only if defined
* temporarily disable repository URL test

* src: update templates test to reflect new name 'cloudevents'

* src: fix go templates and repackage

* fixup: reviewdog spelling errors

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: reviewdog whitespace cleanup

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: run ./hack/update-codegen.sh

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: restore boson-project templates for e2e

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: do not error if default repo location does not exist

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: typo

Signed-off-by: Lance Ball <lball@redhat.com>

* paketo builder and paket community rust buildpack (#599)

* fixup: apply f161d50084

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: update documentation to match impl

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: add git attributes to ignore linting on binary files

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: remove whitespace

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: tweak linter rules

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: tweak .gitattributes

Signed-off-by: Lance Ball <lball@redhat.com>

Co-authored-by: Luke Kingland <lkingland2038@gmail.com>
Co-authored-by: Shashankft9 <48708039+Shashankft9@users.noreply.github.com>
2021-10-27 07:09:01 -07:00
Lance Ball 68b0904b17
feat!: rename event templates to 'cloudevents' (#584)
* feat!: rename event templates to 'cloudevents'

This commit renames the templates for cloudevents to be named "cloudevents".

BREAKING CHANGE

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: update commands.md doc

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: fix make test-templates

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: missed an e2e test change

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: gitignore and pkged.go

Signed-off-by: Lance Ball <lball@redhat.com>

* fixup: adjust Makefile recipe for pkged.go

Signed-off-by: Lance Ball <lball@redhat.com>
2021-10-13 14:19:42 -07:00
Lance Ball a4b15ad992
feat: move go, typescript and nodejs to paketo builders (#485)
This commit removes the Red Hat builders from the built in templates
for Go, TypeScript and Node.js, replacing them with paketo builders.
For Go, the builder is augmented with a simple buildpack that installs
the Go wrapper code and its dependencies. For TypeScript, the paketo
buildpacks oddly don't support an `npm build` step, so these templates
are also dependent on a small Boson buildpack. These buildpacks are
currently at https://github.com/lance/boson-buildpacks but should find
a home either in the boson-project organization, or the knative-sandbox
organization.

This change also slightly modifies how the Node.js and TypeScript
templates are structured, reducing the coupling between the buildpack
and a function project.

This commit includes the code in https://github.com/knative-sandbox/kn-plugin-func/pull/465
and is dependent on it in the use of manifest.yaml.

Provide sane defaults for health endpoints

Note that this will need to be documented as a requirement for
language packs that do not wish to provide explicit endpoints for
these kube health checks. In that case, the language pack should
specify these both as the root path, with a query parameter. For
example, `/?health=readiness` and `/?health=liveness`, or some other
similar construct.

Signed-off-by: Lance Ball <lball@redhat.com>
2021-08-24 08:46:24 -07:00