Skip to content

Fixed a few minor typos and some paragraph formatting here and there.… #9

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
5 changes: 2 additions & 3 deletions 0-Setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ Phoenix region console.
## Configuring your Environment

Now that your user account is accessible, let's log into the provided VM where
you'll be ready to start no configuration.
you'll be ready to start your configuration.

To access your cloud-based development environment you'll need a VNC client
on your laptop. You can use whatever you have previously installed or you can
Expand Down Expand Up @@ -95,7 +95,7 @@ CURRENT NAME PROVIDER API URL REGI
* workshop oracle https://functions.us-phoenix-1.oraclecloud.com phx.ocir.io/cloudnative-devrel/workshop-NNN
```

Now to make sure you can be authenticated correctly and communicate with
Now to make sure you can be authenticated correctly and communicate with
Oracle Functions let's run a command to list all of the existing applications.
It doesn't matter what the results--just that it runs successfully to confirm
connectivity.
Expand Down Expand Up @@ -134,4 +134,3 @@ Now that you're logged into your development machine and are able to communicate
with Oracle Functions it's time to get started!

NEXT: [*Function Labs*](1-Labs.md), UP: [*INDEX*](README.md)

14 changes: 7 additions & 7 deletions 1-Labs.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ So let's [create and deploy your first function](3-First-Function.md).

Fn provides an FDK (Function Development Kit) for each of the core supported
programming languages. But the Java FDK is the most advanced with support for
Maven builds, automatic function argument type conversions, and comprehenive
Maven builds, automatic function argument type conversions, and comprehensive
support for function testing with JUnit.

The [Introduction to Java Functions](4-Java-Functions.md) lab covers all these
Expand All @@ -42,19 +42,19 @@ introduces techniques you can use to track down the source of a failure.

## Automatically invoke Functions using OCI Events service

OCI Events service lets you monitor OCI resource changes and send
notifications and/or trigger a function automatically in response to that
change. We'll explore sending email notifications, and invoking a function via
the OCI Events when an image is uploaded to an OCI Object Storage bucket in
OCI Events service lets you monitor OCI resource changes and send
notifications and/or trigger a function automatically in response to that
change. We'll explore sending email notifications, and invoking a function via
the OCI Events when an image is uploaded to an OCI Object Storage bucket in
[Automatically invoke Functions using OCI Events](9-Functions-Invoke-OCI-Events.md).

## Functions Clients

Functions can be invoked over HTTP using their "invoke endpoint". You can
either invoke the endpoint directly or use the OCI SDK to both manage and
either invoke the endpoint directly or use the OCI SDK to both manage and
invoke functions. We'll explore how to invoke a function using:
* [OCI SDK for Functions](8-Functions-Clients-SDK.md)
* [`oci-curl` utility](7-Functions-Clients-oci-curl.md)
* [`oci-curl` utility](7-Functions-Clients-oci-curl.md)

## Containers as Functions

Expand Down
26 changes: 13 additions & 13 deletions 3-First-Function.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

In this introductory lab we'll walk through developing a function using the
JavaScript programming language and Node.js (without installing any Node.js
tools!) and deploying that function Oracle Functions. We'll also learn about
tools!) and deploying that function to Oracle Functions. We'll also learn about
the core Fn concepts like applications and triggers.

> As you make your way through this lab, look out for this icon.
Expand Down Expand Up @@ -116,7 +116,7 @@ declares a number of properties including:

There are other user-specifiable properties but these will suffice for this
example. Note that if not specified, the name of your function will be taken
from the containing folder name.
from the containing folder name.

### Other Function Files

Expand Down Expand Up @@ -162,9 +162,9 @@ process.
### Creating an Application

Before you can deploy a function you'll need to create an application. You can
do this using the `fn` CLI or in the Oracle Functions web console. We'll use the
console as it's somewhat simpler to click on options than to copy/paste network
IDs for use on the command line.
do this using the `fn` CLI or in the Oracle Functions web console. We'll use
the console as it's somewhat simpler to click on options than to copy/paste
network IDs for use on the command line.

Open your browser to the Oracle Functions console and
login:
Expand All @@ -179,8 +179,8 @@ login:

![Applications List](images/applications-compartment.png)

If you haven't selected the `us-phoenix-1` region you'll see the following error. To
correct simply choose the Phoenix region from the drop down menu.
If you haven't selected the `us-phoenix-1` region you'll see the following
error. To correct simply choose the Phoenix region from the drop down menu.

![Functions Unavailable](images/functions-unavailable.png)

Expand All @@ -201,9 +201,9 @@ substitute in your number.
![Create Application](images/create-application.png)

Functions deployed as part of this application will be attached to the
specifiied vcn and subnet.
specified VCN and subnet.

![user input](images/userinput.png) click "Create" to finish.
![user input](images/userinput.png) Click "Create" to finish.

### Building and Deploying your Function

Expand Down Expand Up @@ -327,7 +327,7 @@ Dockerfile. Of course this is exactly what's happening! When you deploy a
function like this the `fn` CLI is dynamically generating a Dockerfile for your
function and building a container image.

> __NOTE__: two images are actually being used. The first contains the language
> __NOTE__: Two images are actually being used. The first contains the language
> compiler and all the necessary build tools. The second image packages all
> dependencies and any necessary language runtime components. Using this
> strategy, the final function image size can be kept as small and secure as
Expand All @@ -336,9 +336,9 @@ function and building a container image.
> technique see [Multi-Stage Docker Builds for Creating Tiny Go
> Images](https://medium.com/travis-on-docker/multi-stage-docker-builds-for-creating-tiny-go-images-e0e1867efe5a).

As the `fn` CLI is built on Docker you can use the `docker` command to see the local
container image you just generated. You may have a number of Docker images so
use the following command to see only versions of nodefn:
As the `fn` CLI is built on Docker you can use the `docker` command to see the
local container image you just generated. You may have a number of Docker images
so use the following command to see only versions of nodefn:

![user input](images/userinput.png)
>```sh
Expand Down
2 changes: 1 addition & 1 deletion 4-Java-Functions.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ everything you need to deploy the function to Oracle Functions.
Make sure your context is set to point to Oracle Functions. Use the `fn list
context` command to check. If everything is fine then let's deploy the function
to the app you created in the previous lab. It should be named `labapp-NNN`
where `NNN` is your lap participant number.
where `NNN` is your lab participant number.

![user input](images/userinput.png)
>`fn --v deploy --app labapp-NNN `
Expand Down
8 changes: 4 additions & 4 deletions 6-Container-as-Function.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ have to install the native library in addition to adding the Node module to our
![](images/userinput.png)
> In an **empty folder** create a file named `func.js` and copy/paste the
following as its content:

```javascript
const fdk = require('@fnproject/fdk');
const fs = require('fs');
Expand Down Expand Up @@ -104,7 +104,7 @@ image processing.

## Function Metadata

Now that we have a Node.js function and it's dependencies captured in the
Now that we have a Node.js function and it's dependencies captured in the
`package.json` we need a `func.yaml` to capture the function metadata.

![](images/userinput.png)
Expand Down Expand Up @@ -156,7 +156,7 @@ It's a two stage build with the `fnproject/node:dev` image containing `npm` and
other build tools, and the `fnproject/node` image containing just the Node
runtime. This approach is designed to ensure that deployable function container
images are as small as possible--which is beneficial for a number of reasons
including the time it takes to transfer the image from a Docker respository to
including the time it takes to transfer the image from a Docker repository to
the compute node where the function is to be run.

## Custom Node.js Function Dockerfile
Expand Down Expand Up @@ -262,7 +262,7 @@ With the function deployed let's invoke it to make sure it's working as
expected. You'll need a jpeg or png file so either find one on your machine
or download one. If you've cloned this lab's Git repo you can use the
`3x3.jpg` image that has a height and width of 3 pixels, or you can download
it from the `images` folder in github.
it from the `images` folder in GitHub.

![](images/userinput.png)
>```
Expand Down
12 changes: 6 additions & 6 deletions 7-Functions-Clients-oci-curl.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,10 @@ which will return a JSON object similar to the following:
}
```

If you look closely you can see there's an `fnproject.io/fn/invokeEndpoint`
If you look closely you can see there's an `fnproject.io/fn/invokeEndpoint`
property buried in the JSON. You could copy/paste from here but there's a
somewhat more convenient way to just get the invoke endpoint. You just add
`--endpoint` to your ispect command:
`--endpoint` to your inspect command:

![user input](images/userinput.png)
>```
Expand Down Expand Up @@ -122,13 +122,13 @@ of your function endpoint, but using those from our example we'd have:
You'll be prompted for the passphrase for your private key, which is **workshop**.

![](images/userinput.png)
>```
>```
> Enter pass phrase for /home/demo/.oci/workshop_pri_key.pem
.pem: workshop
>
>
>```

If all goes well you should see the output concatinating "Hello, " with the
If all goes well you should see the output concatenating "Hello, " with the
contents of the payload.txt file.

```sh
Expand All @@ -138,5 +138,5 @@ Hello, Functions
You've successfully invoked a function using a signed HTTP request using curl!
Next we'll look how we can call functions from client code using the OCI SDK.

NEXT: [*Container as Function*](6-Container-as-Function.md),
NEXT: [*Container as Function*](6-Container-as-Function.md),
UP: [*Labs*](1-Labs.md), HOME: [*INDEX*](README.md)
8 changes: 4 additions & 4 deletions 8-Functions-Clients-SDK.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

This lab walks you through how to invoke a function deployed to Oracle Functions
using (a preview version of) the Oracle Cloud Infrastructure Java SDK. The OCI
Java SDK exposes two endpoints specificially for Oracle Functions:
Java SDK exposes two endpoints specifically for Oracle Functions:

- `FunctionsManagementClient` - which provides APIs for function and application
lifecycle management (e.g., CRUD operations)
Expand Down Expand Up @@ -55,7 +55,7 @@ AuthenticationDetailsProvider authProvider = new ConfigFileAuthenticationDetails
```

The next two lines instantiate a `FunctionsInvokeClient` using the config file
auth provide and sets the Oracle Functions service endpoint for the region.
auth provider and sets the Oracle Functions service endpoint for the region.

```java
try (FunctionsInvokeClient fnInvokeClient = new FunctionsInvokeClient(authProvider)) {
Expand Down Expand Up @@ -108,7 +108,7 @@ an `InvokeFunctionResponse` in return.
for your tenancy, compartment, user id, etc. So it's ready to go! There's
only one profile defined, but you can have many profiles for use with
different tenancies or compartments.

Review your `~/.oci/config` file to become familiar with its contents and
structure. In a terminal type:

Expand Down Expand Up @@ -203,5 +203,5 @@ Functions to invoke a function. The OCI SDK provides support for the entire
Functions API so you can both invoke and manage functions and applications.
Please refer to the SDK docs for more details.

NEXT: [*Functions Clients-oci curl*](7-Functions-Clients-oci-curl.md),
NEXT: [*Functions Clients-oci curl*](7-Functions-Clients-oci-curl.md),
UP: [*Labs*](1-Labs.md), HOME: [*INDEX*](README.md)
Loading