Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
User expired
2018s-advanced-distributed-systems
Commits
58f44ef7
Unverified
Commit
58f44ef7
authored
Nov 19, 2018
by
Bennett Piater
Browse files
add deploy and enhance tasks pushing to kafka
parent
186e6cb3
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
124 additions
and
0 deletions
+124
-0
kafka-images/deploy.sh
kafka-images/deploy.sh
+19
-0
kafka-images/enhance/index.js
kafka-images/enhance/index.js
+46
-0
kafka-images/enhance/package.json
kafka-images/enhance/package.json
+7
-0
kafka-images/grayscale/index.js
kafka-images/grayscale/index.js
+45
-0
kafka-images/grayscale/package.json
kafka-images/grayscale/package.json
+7
-0
No files found.
kafka-images/deploy.sh
0 → 100755
View file @
58f44ef7
#!/bin/bash
set
-e
wsk
=
$1
pushd
$(
dirname
$0
)
/enhance
zip
-ru
../enhance.zip
*
||
true
popd
$wsk
-i
action update enhance
$(
dirname
$0
)
/enhance.zip
--kind
nodejs:8
pushd
$(
dirname
$0
)
/grayscale
zip
-ru
../grayscale.zip
*
||
true
popd
$wsk
-i
action update consumer
$(
dirname
$0
)
/grayscale.zip
--kind
nodejs:8
pushd
$(
dirname
$0
)
/zip
zip
-ru
../zip.zip
*
||
true
popd
$wsk
-i
action update consumer
$(
dirname
$0
)
/zip.zip
--kind
nodejs:8
kafka-images/enhance/index.js
0 → 100644
View file @
58f44ef7
const
gm
=
require
(
'
gm
'
).
subClass
({
imageMagick
:
true
});
const
{
Kafka
,
logLevel
}
=
require
(
'
kafkajs
'
)
async
function
writeToKafka
(
topic
,
key
,
json
)
{
const
kafka
=
new
Kafka
({
clientId
:
'
producer
'
,
brokers
:
[
'
ark-01.srvs.cloudkafka.com:9094
'
,
'
ark-02.srvs.cloudkafka.com:9094
'
,
'
ark-03.srvs.cloudkafka.com:9094
'
],
ssl
:
true
,
sasl
:
{
mechanism
:
'
scram-sha-256
'
,
username
:
'
mra5q18k
'
,
password
:
'
SddBJrfRgVWkWYCYhaw-J_5pDDDamZsS
'
}
});
const
producer
=
kafka
.
producer
()
await
producer
.
connect
()
await
producer
.
send
({
topic
:
'
mra5q18k-
'
+
topic
,
messages
:
[{
key
:
key
,
value
:
json
]
})
await
producer
.
disconnect
()
return
{};
}
function
main
({
filename
})
{
// TODO decide how data gets passed in
const
image
=
Buffer
.
from
(
data
,
"
base64
"
);
return
new
Promise
((
resolve
,
reject
)
=>
{
gm
(
image
,
"
test.jpg
"
)
// .contrast(-3)
.
enhance
()
.
toBuffer
((
err
,
buffer
)
=>
{
if
(
err
)
reject
({
"
error
"
:
err
});
else
{
writeToKafka
(
"
topic3
"
,
filename
+
"
.enhanced.jpg
"
,
'
{"data": "
'
+
buffer
.
toString
(
"
base64
"
)
+
'
"}
'
);
resolve
({});
}
});
});
}
kafka-images/enhance/package.json
0 → 100644
View file @
58f44ef7
{
"name"
:
"enhance"
,
"main"
:
"index.js"
,
"dependencies"
:
{
"kafkajs"
:
"*"
}
}
kafka-images/grayscale/index.js
0 → 100644
View file @
58f44ef7
const
gm
=
require
(
'
gm
'
).
subClass
({
imageMagick
:
true
});
const
{
Kafka
,
logLevel
}
=
require
(
'
kafkajs
'
)
async
function
writeToKafka
(
topic
,
key
,
json
)
{
const
kafka
=
new
Kafka
({
clientId
:
'
producer
'
,
brokers
:
[
'
ark-01.srvs.cloudkafka.com:9094
'
,
'
ark-02.srvs.cloudkafka.com:9094
'
,
'
ark-03.srvs.cloudkafka.com:9094
'
],
ssl
:
true
,
sasl
:
{
mechanism
:
'
scram-sha-256
'
,
username
:
'
mra5q18k
'
,
password
:
'
SddBJrfRgVWkWYCYhaw-J_5pDDDamZsS
'
}
});
const
producer
=
kafka
.
producer
()
await
producer
.
connect
()
await
producer
.
send
({
topic
:
'
mra5q18k-
'
+
topic
,
messages
:
[{
key
:
key
,
value
:
json
]
})
await
producer
.
disconnect
()
return
{};
}
function
main
({
img
})
{
// TODO decide how data gets passed in
const
image
=
Buffer
.
from
(
img
,
"
base64
"
);
return
new
Promise
((
resolve
,
reject
)
=>
{
gm
(
image
,
"
test.jpg
"
)
.
monochrome
()
.
toBuffer
((
err
,
buffer
)
=>
{
if
(
err
)
reject
({
"
error
"
:
err
});
else
{
writeToKafka
(
"
topic3
"
,
filename
+
"
.grayscaled.jpg
"
,
'
{"data": "
'
+
buffer
.
toString
(
"
base64
"
)
+
'
"}
'
);
resolve
({});
}
});
});
}
kafka-images/grayscale/package.json
0 → 100644
View file @
58f44ef7
{
"name"
:
"grayscale"
,
"main"
:
"index.js"
,
"dependencies"
:
{
"kafkajs"
:
"*"
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment