Compare commits

..

12 Commits

Author SHA1 Message Date
GitHub Action 212a19233d build 2024-09-06 21:27:57 +00:00
Brandon Foley 61a0d19c30 4.0.1 Changelog (#94) 2024-09-06 14:27:01 -07:00
Brandon Foley 5e6a3a4114 Update devDependencies (#90) 2024-09-06 09:33:20 -04:00
Brandon Foley 2d160654d6 Adding dependabot (#89)
* Adding dependabot

* update spacing
2024-09-05 18:00:13 -04:00
David Gamero a57aa49538 update release workflow to major version tag (#86)
* Update release-pr.yml

* Update README.md
2024-03-08 18:07:19 -05:00
David Gamero a72463cdd7 v4 release (#84) 2024-02-13 15:44:18 -05:00
Sarah Miles f2d80c8192 Update to Node 20 (#83) 2024-02-13 15:07:04 -05:00
David Gamero 3624a1fc64 separate action and execution (#77) 2023-01-27 14:49:09 -05:00
dependabot[bot] ab43e1cba5 Bump minimatch from 3.0.4 to 3.1.2 (#74)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 3.0.4 to 3.1.2.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.0.4...v3.1.2)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-26 14:07:12 -05:00
dependabot[bot] f7b05df5e5 Bump json5 from 2.2.1 to 2.2.3 (#75)
Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-26 13:25:42 -05:00
Oliver King 6332864ca0 Update README with v3 version (#72) 2023-01-09 12:32:46 -06:00
dependabot[bot] d7e25ce077 Bump qs from 6.5.2 to 6.5.3 (#73)
Bumps [qs](https://github.com/ljharb/qs) from 6.5.2 to 6.5.3.
- [Release notes](https://github.com/ljharb/qs/releases)
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.5.2...v6.5.3)

---
updated-dependencies:
- dependency-name: qs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-12 13:44:07 -05:00
11 changed files with 11281 additions and 9039 deletions
+18
View File
@@ -0,0 +1,18 @@
version: 2
updates:
- package-ecosystem: npm
directory: /
schedule:
interval: weekly
groups:
actions:
patterns:
- '*'
- package-ecosystem: github-actions
directory: .github/workflows
schedule:
interval: weekly
groups:
actions:
patterns:
- '*'
+12 -8
View File
@@ -1,14 +1,18 @@
name: Create release PR
name: Release Project
on:
push:
branches:
- main
paths:
- CHANGELOG.md
workflow_dispatch:
inputs:
release:
description: 'Define release version (ex: v1, v2, v3)'
required: true
jobs:
release-pr:
uses: OliverMKing/javascript-release-workflow/.github/workflows/release-pr.yml@main
release:
permissions:
actions: read
contents: write
uses: Azure/action-release-workflows/.github/workflows/release_js_project.yaml@v1
with:
release: ${{ github.event.inputs.release }}
changelogPath: ./CHANGELOG.md
+10
View File
@@ -0,0 +1,10 @@
# Change Log
## [4.0.1] - 2024-09-06
- #90 update dev dependencies with Typescript to 5
- #89 Adding dependabot
## [4.0.0] - 2024-02-13
- #83 update to node20 as node16 is deprecated
+4 -4
View File
@@ -19,7 +19,7 @@ Refer to the [action metadata file](./action.yml) for details about inputs. Note
### Kubeconfig approach
```yaml
- uses: azure/k8s-set-context@v2
- uses: azure/k8s-set-context@v4
with:
method: kubeconfig
kubeconfig: <your kubeconfig>
@@ -50,7 +50,7 @@ Please refer to documentation on fetching [kubeconfig for any generic K8s cluste
### Service account approach
```yaml
- uses: azure/k8s-set-context@v2
- uses: azure/k8s-set-context@v4
with:
method: service-account
k8s-url: <URL of the cluster's API server>
@@ -74,7 +74,7 @@ kubectl get secret <service-account-secret-name> -n <namespace> -o yaml
### Service account approach for arc cluster
```yaml
- uses: azure/k8s-set-context@v2
- uses: azure/k8s-set-context@v4
with:
method: service-account
cluster-type: arc
@@ -86,7 +86,7 @@ kubectl get secret <service-account-secret-name> -n <namespace> -o yaml
### Service principal approach for arc cluster
```yaml
- uses: azure/k8s-set-context@v2
- uses: azure/k8s-set-context@v4
with:
method: service-principal
cluster-type: arc
+1 -1
View File
@@ -35,5 +35,5 @@ inputs:
branding:
color: 'blue'
runs:
using: 'node16'
using: 'node20'
main: 'lib/index.js'
+8820 -7228
View File
File diff suppressed because it is too large Load Diff
+2372 -1757
View File
File diff suppressed because it is too large Load Diff
+9 -8
View File
@@ -1,9 +1,10 @@
{
"name": "k8s-set-context-action",
"version": "1.0.0",
"version": "4.0.0",
"private": true,
"main": "lib/index.js",
"scripts": {
"prebuild": "npm i @vercel/ncc",
"build": "ncc build src/run.ts -o lib",
"test": "jest",
"test-coverage": "jest --coverage",
@@ -25,13 +26,13 @@
"js-yaml": "^4.1.0"
},
"devDependencies": {
"@types/jest": "^28.1.2",
"@types/jest": "^29.5.11",
"@types/js-yaml": "^4.0.4",
"@types/node": "^16.0.0",
"@vercel/ncc": "^0.34.0",
"jest": "^28.1.1",
"prettier": "2.7.1",
"ts-jest": "^28.0.5",
"typescript": "4.7.4"
"@types/node": "^20.11.8",
"@vercel/ncc": "^0.38.1",
"jest": "^29.7.0",
"prettier": "^3.2.5",
"ts-jest": "^29.2.5",
"typescript": "^5.3.3"
}
}
+1 -1
View File
@@ -1,5 +1,5 @@
import {getRequiredInputError} from '../tests/util'
import {run} from './run'
import {run} from './action'
import fs from 'fs'
import * as utils from './utils'
+33
View File
@@ -0,0 +1,33 @@
import * as core from '@actions/core'
import * as path from 'path'
import * as fs from 'fs'
import {Cluster, parseCluster} from './types/cluster'
import {setContext, getKubeconfig} from './utils'
/**
* Sets the Kubernetes context based on supplied action inputs
*/
export async function run() {
// get inputs
const clusterType: Cluster | undefined = parseCluster(
core.getInput('cluster-type', {
required: true
})
)
const runnerTempDirectory: string = process.env['RUNNER_TEMP']
const kubeconfigPath: string = path.join(
runnerTempDirectory,
`kubeconfig_${Date.now()}`
)
// get kubeconfig and update context
const kubeconfig: string = await getKubeconfig(clusterType)
const kubeconfigWithContext: string = setContext(kubeconfig)
// output kubeconfig
core.debug(`Writing kubeconfig contents to ${kubeconfigPath}`)
fs.writeFileSync(kubeconfigPath, kubeconfigWithContext)
fs.chmodSync(kubeconfigPath, '600')
core.debug('Setting KUBECONFIG environment variable')
core.exportVariable('KUBECONFIG', kubeconfigPath)
}
+1 -32
View File
@@ -1,36 +1,5 @@
import {run} from './action'
import * as core from '@actions/core'
import * as path from 'path'
import * as fs from 'fs'
import {Cluster, parseCluster} from './types/cluster'
import {setContext, getKubeconfig} from './utils'
/**
* Sets the Kubernetes context based on supplied action inputs
*/
export async function run() {
// get inputs
const clusterType: Cluster | undefined = parseCluster(
core.getInput('cluster-type', {
required: true
})
)
const runnerTempDirectory: string = process.env['RUNNER_TEMP']
const kubeconfigPath: string = path.join(
runnerTempDirectory,
`kubeconfig_${Date.now()}`
)
// get kubeconfig and update context
const kubeconfig: string = await getKubeconfig(clusterType)
const kubeconfigWithContext: string = setContext(kubeconfig)
// output kubeconfig
core.debug(`Writing kubeconfig contents to ${kubeconfigPath}`)
fs.writeFileSync(kubeconfigPath, kubeconfigWithContext)
fs.chmodSync(kubeconfigPath, '600')
core.debug('Setting KUBECONFIG environment variable')
core.exportVariable('KUBECONFIG', kubeconfigPath)
}
// Run the application
run().catch(core.setFailed)